PHP/MySQL - Miért fut le többször a mysqli_query?
A mysqli_query 1/2/4/6 alkalommal fut le.
A kód:
$c = 1;
$result = mysqli_query($con, "SELECT body FROM domains");
while($row = mysqli_fetch_assoc($result)) {
mysqli_query($con, "INSERT INTO whoisdb (id, domain) VALUES ('', '');
$c++;
}
A C értéke 1. Viszont az adatbázisba többször kerül be.
A kedvencem az, amikor lefut a PHP és még fél óráig kerülnek be új rekordok az adatbázisba.
Tudnátok segíteni? Próbálnám elkerülni a PDO-t.
Ja, a sor végén tényleg azok, de az insert into előtt nem éppen.
G.
Ez a kód nem jó, syntax error.
Ez mi?
mysqli_query($con, "INSERT INTO whoisdb (id, domain) VALUES ('', '');
Zárójel megnyitva, de nincs lezárva. String idézőjellel megnyitva, de nincs lezárva. Így lenne jó:
mysqli_query($con, "INSERT INTO whoisdb (id, domain) VALUES ('', '')");
Ha megy a kód, akkor nem pontosan másoltad be, hanem csak begépelted saját belátásod szerint, úgy meg elég nehéz megtalálni a hibát, ha nem is ezzel a kóddal van a hiba.
Egyébként annyiszor fut le a mysqli_query(), ahány sor van a domains táblában. Más okot nem látok, ami miatt ez többször futna le. Nem azért van, mert mysqli-t használsz, a PDO ezen biztos nem segít.
Egyébként az alatt mit értesz, hogy "A C értéke 1"?
A teljes kód:
$c = 1;
$result = mysqli_query($con, "SELECT body FROM domains WHERE statusCom=1 LIMIT 1000000");
while($row = mysqli_fetch_assoc($result)) {
$helper = "com";
mysqli_query($con, "INSERT INTO whoisdb (id, domain, registered, ip, geo, locked, whois) VALUES ('".genString(8)."', '".$row["body"].".".$helper."', '".date('Y-m-d|H:i:s', time())."', '".gethostbyname($row["body"].".".$helper)."', '".ip_info(gethostbyname($row["body"].".".$helper), "Address")."', '0', '".getWhois($row["body"].".".$helper)."')");
$c++;
}
Kapcsolódó kérdések:
Minden jog fenntartva © 2025, 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!