PHP lekérdezésben miért Array-t kapok válaszul, mikor egy konkrét értéket kellene?
<?php
$connect = mysql_connect('localhost','nev','jelszo');
if(!$connect){
echo "nem jött létre a kapcsolat";
}
mysql_select_db('teszt',$connect) or die ('nincs');
if(mysql_num_rows(mysql_query("SELECT * FROM teszt WHERE cim = 'Lap'")));
//INNENTŐL LÉNYEGES
$adatok = mysql_query("SELECT * FROM teszt");
while ($adat = mysql_fetch_array($adatok))
{
echo "$adat";
}
?>
Erre ezt kapom vissza: ArrayArray
Miért van ez? az adatbázisban a teszt táblában a cim rekord fel van töltve két értékkel
Azért kapsz vissza tömböt, mert a mysql_fetch_array ( [link] ) visszatérési értéke tömb. A tömb elemeinek "kulcsai" az adatbázistábla oszlopnevei lesznek, a tömb elemeinek értéke, pedig az adatbázistábla adott oszlopához tartozó rekordokat fogja tartalmazni.
Szóval vagy add meg az adott oszlop nevét - például:
echo $adat["cim"];
vagy
echo $adat[0];
vagy írasd ki a teljes tömböt:
print_r($adat);
Kedves kérdező az alábbi - nem privát jellegű - kérdést írtad privát üzenetben:
"esetleg még azt leírnád, hogy tudnám módosítani mondjuk a teszt tábla cim rekordjában mondjuk a Lap elemet?
INSERT lesz ha jól tudom"
1. A "cim" nem rekord (sor) hanem oszlop.
2. A "Lap" a "cim" oszlophoz tartozó mező.
3. Az INSERT egy új rekordot (sor) rak bele az adatbázis-táblába. Ha módosítani szeretnél egy adott értékű rekordot, akkor az UPDATE lesz a barátod.
Kapcsolódó kérdések:
Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!