abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
AbcLinuxu hledá autory!
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
    dnes 12:22 | IT novinky

    Raspberry Pi Touch Display 2 je nově vedle 7palcové k dispozici také v 5palcové variantě. Rozlišení stejné 720 × 1280 pixelů. Cena 40 dolarů.

    Ladislav Hagara | Komentářů: 0
    dnes 04:44 | IT novinky

    Telnet a ssh klient PuTTY postupně přechází na novou doménu putty.software.

    Ladislav Hagara | Komentářů: 1
    16.8. 01:00 | Komunita

    Debian dnes slaví 32 let. Ian Murdock oznámil vydání "Debian Linux Release" 16. srpna 1993.

    Ladislav Hagara | Komentářů: 15
    15.8. 17:44 | IT novinky

    Policisté zadrželi odsouzeného drogového dealera Tomáše Jiřikovského, který daroval ministerstvu spravedlnosti za tehdejšího ministra Pavla Blažka (ODS) bitcoiny v miliardové hodnotě, a zajistili i darovanou kryproměnu. Zadržení Jiřikovského může být podle ministerstva důležité k rozuzlení kauzy, která vypukla koncem května a vedla ke konci Blažka. Zajištění daru podle úřadu potvrzuje závěry dříve publikovaných právních

    … více »
    Ladislav Hagara | Komentářů: 9
    15.8. 13:44 | IT novinky

    Administrativa amerického prezidenta Donalda Trumpa jedná o možném převzetí podílu ve výrobci čipů Intel. Agentuře Bloomberg to řekly zdroje obeznámené se situací. Akcie Intelu v reakci na tuto zprávu výrazně posílily. Trump minulý týden označil Tana za konfliktní osobu, a to kvůli jeho vazbám na čínské společnosti, čímž vyvolal nejistotu ohledně dlouholetého úsilí Intelu o obrat v hospodaření. Po pondělní schůzce však prezident o šéfovi Intelu hovořil příznivě.

    Ladislav Hagara | Komentářů: 3
    15.8. 05:44 | IT novinky

    Společnost Purism stojící za linuxovými telefony a počítači Librem má nově v nabídce postkvantový šifrátor Librem PQC Encryptor.

    Ladislav Hagara | Komentářů: 10
    14.8. 18:00 | Nová verze

    VirtualBox, tj. multiplatformní virtualizační software, byl vydán v nové verzi 7.2. Přehled novinek v Changelogu. Vypíchnou lze vylepšené GUI.

    Ladislav Hagara | Komentářů: 0
    14.8. 14:11 | IT novinky

    Eric Migicovsky, zakladatel společnosti Pebble, v lednu oznámil, že má v plánu spustit výrobu nových hodinek Pebble s již open source PebbleOS. V březnu spustil předprodej hodinek Pebble Time 2 (tenkrát ještě pod názvem Core Time 2) za 225 dolarů s dodáním v prosinci. Včera představil jejich konečný vzhled (YouTube).

    Ladislav Hagara | Komentářů: 31
    14.8. 12:44 | Zajímavý software

    Byla oznámena nativní podpora protokolu ACME (Automated Certificate Management Environment) ve webovém serveru a reverzní proxy NGINX. Modul nginx-acme je zatím v preview verzi.

    Ladislav Hagara | Komentářů: 2
    14.8. 12:22 | Nová verze

    Vývojáři KDE oznámili vydání balíku aplikací KDE Gear 25.08. Přehled novinek i s náhledy a videi v oficiálním oznámení.

    Ladislav Hagara | Komentářů: 0
    Kolik tabů máte standardně otevřeno ve web prohlížeči?
     (52%)
     (18%)
     (4%)
     (5%)
     (2%)
     (1%)
     (1%)
     (17%)
    Celkem 411 hlasů
     Komentářů: 24, poslední dnes 11:25
    Rozcestník

    Dotaz: PHP varování: expects parameter 1 to be mysqli...

    derddddd avatar 14.11.2005 18:57 derddddd | skóre: 4 | blog: lama_log | Pisek
    PHP varování: expects parameter 1 to be mysqli...
    Přečteno: 812×
    Chyba začátečníka,ale jsem zacatecnik, presto hledal sem, googlil sem, oficialni manual s fcemi mysli_fetch_array() a mysqli_free_result() sem taky prosel, ale reseni sem nenasel. Ze sameho zoufalstvi sem okopiroval demo z php.net manualu a stejnak to vraci chybova hlaseni.

    Zde jsou hlaseni:
    1)mysqli_fetch_array() expects parameter 1 to be mysqli_result, boolean given in ..cesta ke skriptu in line 5
    2)mysqli_free_result() expects parameter 1 to be mysqli_result, boolean given in ...cesta ke skriptu in line 8

    Zde je kód i s radkovanim:
    01 <?php
    02 $query="SELECT model_auta, nazev_modelu, nazev_vyrobce_id   FROM tb_auto, tb_model WHERE tb_auto.model_auta=tb_model.id_model AND tb_model.nazev_vyrobce_id=tb_vyrobce.id_vyrobce";
    03 $result = mysqli_query($link, $query);
    04 /* associative and numeric array */
    05 $row = mysqli_fetch_array($result, MYSQLI_BOTH);
    06 printf("%s (%s)\n", $row[0], $row["model_auta"]);  
    07 /* free result set */
    08 mysqli_free_result($result);
    09 /* close connection */
    10 mysqli_close($link);
    11 ? >
    
    KDE JE CHYBA? Prosim o radu, nebo nasmerovani na link, kde zjistim jak dale. DIK
    Snad se tady neztratím...:))

    Odpovědi

    derddddd avatar 14.11.2005 19:18 derddddd | skóre: 4 | blog: lama_log | Pisek
    Rozbalit Rozbalit vše Re: PHP varování: expects parameter 1 to be mysqli...
    Pro upreseni jedu na:

    apache 2.0.55
    mysql 4.1.14
    php 5.0.5
    Snad se tady neztratím...:))
    14.11.2005 19:29 hudin | skóre: 7
    Rozbalit Rozbalit vše Re: PHP varování: expects parameter 1 to be mysqli...
    A $link i nejak nastavujete? (Tedy, pripojujete se k db?)
    derddddd avatar 14.11.2005 20:30 derddddd | skóre: 4 | blog: lama_log | Pisek
    Rozbalit Rozbalit vše Re: PHP varování: expects parameter 1 to be mysqli...
    ano pres mysqli_connect($host, $user, $pass, $db), kde $host je localhost, $db je db_auta ostatni sou prazdny
    Snad se tady neztratím...:))
    derddddd avatar 14.11.2005 23:15 derddddd | skóre: 4 | blog: lama_log | Pisek
    Rozbalit Rozbalit vše Re: PHP varování: expects parameter 1 to be mysqli...
    Jedna důležitá rada pro newbies jako já! Každá fce "musí" být ošetřena, hnedle jak píšete kód, alespoň ze začátku než získáte jistotu... Proč? PHP vám vráti hlášku o chybě a vy alespoň budete vědět, kde ji hledat.... Jako JÁ:)! Zde je oprava:
    1)doopravil sem syntaxi fce mysqli_query() o attribut - resultmode.
    2)již zmiňované ošetření chyb pomocí if...else
    $query="SELECT nazev_modelu, nazev_vyrobce, id_vyrobce FROM tb_model, tb_vyrobce WHERE 
    tb_model.vyrobce_id=tb_vyrobce.id_vyrobce ORDER BY tb_vyrobce.nazev_vyrobce";
    if(!$query)
    {
       echo "Špatně napsaný dotaz do databáze";
       exit();
    }
    else
        {
     	   $result=mysqli_query($link, $query, MYSQLI_STORE_RESULT);
    	   if(!$result)
    	   {
    	      echo "Neproveden dotaz do databáze";
    		  exit();
    	   }
    	   else
    	       {		   
                    $vyrobce="Výrobce: <br />";
    		$model="<strong>Model</strong>:";			
        		echo $vyrobce;	
                   /* načti $result do asociativního pole */
    		while ($row=mysqli_fetch_assoc($result))
    		   {	                   			   
                        $data ="" .$row["nazev_modelu"]. "\n";
    		    echo $model .$data. "<br />";			               }  
    	       }
       /* free result set */
       mysqli_free_result($result);
    }
    /* close connection */
    mysqli_close($link);					   
    ?>
    
    Určitě to ještě není to pravé, ale hlášky o očekávání parametru "to be mysqli" jsou pryč. Má chyba byla již v $query, kde byl špatně napsán název sloupce...:) Takže kód nedošel ani k $result, a teď jestli se mýlim, tak bych rád, aby mne někdo opravil - nedošlo k naplnění proměnné $result, a poté tedy i nebylo co čistit ...free_result($result), proto ty chybové hlášky.
    Snad se tady neztratím...:))
    15.11.2005 12:03 miso
    Rozbalit Rozbalit vše Re: PHP varování: expects parameter 1 to be mysqli...
    if(!$query)
    
    toto podla mna nema vyznam, nic tym nezistis
    derddddd avatar 16.11.2005 11:36 derddddd | skóre: 4 | blog: lama_log | Pisek
    Rozbalit Rozbalit vše Re: PHP varování: expects parameter 1 to be mysqli...
    Ano, chyba byla odhlalena az v $result "Neproveden dotaz do databáze". hm... poopravim to! dik
    Snad se tady neztratím...:))
    16.11.2005 14:57 Milan Uhrák | skóre: 31 | blog: milan_at_ABC
    Rozbalit Rozbalit vše Re: PHP varování: expects parameter 1 to be mysqli...
    Ahoj, Taky si trošku s PHP a MySQL hraju a používám 2 způsoby, jak chybu ošetřít:
    $result = mysql_query($sqlstring) or die (mysql_error()." -> ".$sqlstring)
    případně pokud není nutno skript zastavovat, místo
    die(...)
    použiju
    or $sqlerror.= .. totéž co v die...+"\n" 
    a na závěr
    if ($sqlerror) {
       alert($sqlerror);
       }
    
    funkce alert vytvoří javaskript s alertem, a tak se síce nic nevypíše, ale nakonec vyskočí okno se správou. Někdy se to hodí.

    Založit nové vláknoNahoru

    Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

    ISSN 1214-1267   www.czech-server.cz
    © 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.