Autor Zpráva
Jack06
Profil
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
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
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];
		}

Vaše odpověď


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm: