Autor | Zpráva | ||
---|---|---|---|
Jack06 Profil |
#1 · Zasláno: 22. 11. 2009, 09:08:35
Nevíte prosím, jak nahradit toto na misqli:
$dotaz1 = "SELECT id, nazev FROM sekce WHERE koren = 'A'"; mysql_connect("localhost","root","vertrigo"); $hlavni_sekce = mysql("katalog", $dotaz1); /* kolik sekci bylo nalezeno: */ $pocet_vracenych_sekci = mysql_num_rows($hlavni_sekce); /* pro kazdou takto nalezenou sekci provedeme nasledujici telo cyklu: */ for ($i = 0; $i < $pocet_vracenych_sekci; $i++) { $cislo_sekce = mysql_result($hlavni_sekce,$i,"id"); $nazev_sekce = mysql_result($hlavni_sekce,$i,"nazev"); print "<LI> <A HREF=\"index.php?sekce=$cislo_sekce\">$nazev_sekce</A>\n"; } Já vím jak nahradit začátek: $hlavni_sekce = $db->query("SELECT id, nazev FROM sekce WHERE koren = 'A'"); /* kolik sekci bylo nalezeno: */ $pocet_vracenych_sekci = $hlavni_sekce->num_rows; ale tu práci s tím resultem nevím :-( díky za rady |
||
Jack06 Profil |
#2 · Zasláno: 22. 11. 2009, 11:32:25
Dobré, tak jsem již přišel na náhradu:
$hlavni_sekce = $db->query("SELECT id, nazev FROM sekce WHERE koren = 'A'"); while($data = hlavni_sekce->fetch_assoc()){ print "<LI> <A HREF=\"index.php?sekce=$data[id]\">$data[nazev]</A>\n"; } při takovémto požadavku by to vypadalo následně: $hlavni_sekce = mysql_query("SELECT id, nazev FROM sekce WHERE koren = 'A'"); $prom = mysql_result($hlavni_sekce, 0, 0) řešení: $hlavni_sekce = $db->query("SELECT id, nazev FROM sekce WHERE koren = 'A'"); $data = hlavni_sekce->fetch_assoc() $prom = $data['id']); Vytáhne to první záznam ze sloupce id, ale řeším ještě jeden problém, a to když potřebuji sekvenci záznamů: @mysql_result($data, 0, 0), @mysql_result($data, 1, 0), @mysql_result($data, 0, 1), @mysql_result($data, 1, 1) slovně jména položky jsou brána při mysql_fetch_array, kdy může být první sloupce označován jako například (id), nebo (0) : @mysql_result(id_výsledku, číslo záznamu = 0, jméno_položky = 0), @mysql_result(id_výsledku, číslo záznamu = 1, jméno_položky = 0), @mysql_result(id_výsledku, číslo záznamu = 0, jméno_položky = 1), @mysql_result(id_výsledku, číslo záznamu = 1, jméno_položky = 1) bohužel nevím jak udělat v s mysqli tento dotaz pomoci nějaké smyčky, která vybere jen tyto záznamy. Je tu někdo schopen mi poradit? Děkuji |
||
Jack06 Profil |
#3 · Zasláno: 22. 11. 2009, 11:59:30
Tak nejspíše také vyřešeno, sice nevím zda zdárně nejlepším způsobem, ale kdyby někdo chtěl vědět jak tak:
$array = array(); for ($i=0; $i<2; $i++) { $mysqli_result = $data->fetch_assoc(); $array .= $mysqli_result[0] .','. $mysqli_result[1]; } |
||
Časová prodleva: 8 let
|