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 10:33 | Komunita

V pondělí měl na YouTube online premiéru otevřený krátký 2D film Hero vytvořený v 3D softwaru Blender. Cílem stejnojmenného projektu Hero je vylepšit nástroj Grease Pencil (tužka) v Blenderu 2.8.

Ladislav Hagara | Komentářů: 3
včera 23:22 | Nová verze

Byla vydána verze 4.0 kolekce svobodného softwaru umožňujícího nahrávání, konverzi a streamovaní digitálního zvuku a obrazu FFmpeg (Wikipedie). Přehled novinek v Changelogu (GitHub).

Ladislav Hagara | Komentářů: 0
včera 17:22 | Komunita

Včera vydanou hru Rise of the Tomb Raider pro Linux lze do pondělí 23. dubna koupit na Steamu s 67% slevou. Místo 49,99 € za 16,49 €.

Ladislav Hagara | Komentářů: 0
včera 16:11 | Komunita

Na Humble Bundle lze získat počítačovou hru Satellite Reign (Wikipedie, YouTube) běžící také v Linuxu zdarma. Speciální akce končí v sobotu v 19:00.

Ladislav Hagara | Komentářů: 4
včera 15:44 | Zajímavý software

Společnost Apple koupila před třemi lety společnost FoundationDB vyvíjející stejnojmenný NoSQL databázový systém FoundationDB (Wikipedie). Včera byl tento systém uvolněn jako open source pod licencí Apache 2.0. Zdrojové kódy jsou k dispozici na GitHubu.

Ladislav Hagara | Komentářů: 0
včera 15:00 | Nová verze

Po dva a půl roce od vydání verze 5.7 oznámila společnost Oracle vydání nové major verze 8.0 (8.0.11) databázového systému MySQL (Wikipedie). Přehled novinek v poznámkách k vydání. Zdrojové kódy komunitní verze MySQL jsou k dispozici na GitHubu.

Ladislav Hagara | Komentářů: 2
19.4. 14:44 | Pozvánky

Spolek OpenAlt zve příznivce otevřených technologií a otevřeného přístupu na 151. brněnský sraz, který proběhne v pátek 20. 4. od 18:00 hodin v restauraci Benjamin na Drobného 46.

Ladislav Hagara | Komentářů: 0
19.4. 13:33 | Nová verze

Byla vydána verze 18.04.0 KDE Aplikací (KDE Applications). Přehled novinek v kompletním seznamu změn a na stránce s dalšími informacemi.

Ladislav Hagara | Komentářů: 0
19.4. 13:11 | Nová verze

Bylo oznámeno vydání nové stabilní verze 1.26 a beta verze 1.27 open source textového editoru Atom (Wikipedie). Přehled novinek i s náhledy v příspěvku na blogu. Podrobnosti v poznámkách k vydání.

Ladislav Hagara | Komentářů: 0
19.4. 12:55 | Komunita

Dle plánu byla dnes vydána hra Rise of the Tomb Raider (Wikipedie) pro Linux. Koupit ji lze za 49,99 €.

Ladislav Hagara | Komentářů: 3
Používáte na serverech port knocking?
 (3%)
 (7%)
 (46%)
 (27%)
 (17%)
Celkem 339 hlasů
 Komentářů: 29, poslední 5.4. 12: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: 583×
    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: 27 | 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.