PHP, SQL lekérdezés, ezek között mégis mi az a különbség, mai miatt nem talál semmit az adatbázisban?
Ez azt adja vissza hogy 'user':
$tsql = "SELECT uright from users where uname='admin'";
$tresult = mysqli_query($conn,$tsql);
if (mysqli_num_rows($tresult)>0) {
$row = mysqli_fetch_row($tresult);
echo $row[0];
}else{echo "SS";}
Ez azt adja vissza hogy 'SS', azaz hogy nem találja meg amit keresek:
function getSingle($query){
$tsql = $query;
$tresult = mysqli_query($conn,$tsql);
if (mysqli_num_rows($tresult)>0) {
$row = mysqli_fetch_row($tresult);
echo $row[0];
}else{echo "SS";}
}
getSingle("SELECT uright from users where uname='admin'");
Mi gondja van?
ha valakit zavarna hogy a posztban csúnyán néz ki:
"mi az a különbség, ami* miatt nem talál semmit"
Ha nincs különbség, miért más az eredmény? Hallod, ne mondd már hogy komolyan egy "nincs különbség"-et dobtál :D
Kedves kérdező. Azért nem kapsz választ a kérdésedre, mert nincs elég információ arra vonatkozóan, hogy mi lehet a problémád.
A kódok amiket bemásoltál ennyiből jónak tűnnek, ezek szerint máshol lesz a probléma, amihez további információra van szükség. Adatbázisra, teljes kódra, stb.
"ha valakit zavarna hogy a posztban csúnyán néz ki"
Próbáltál javítani a hibádon, ez helyes. Azonban ajánlanám, hogy nézz utána a kódmegosztó oldalaknak, mert sokkal egyszerűbbek és praktikusabbak: kis kódok esetén például: hastebin.com. Ha a kódod hosszabb, több fájlból áll, akkor például érdemes lehet feltölteni GitHub-ra vagy GutLab-ra.
"A felsőnél a mysqli_num_rows($tresult)>0 igaz lesz, a másodiknál hamis."
Vagy a $conn változód hibás valamiért vagy a $tsql változód. Ennyiből nem lehet megmondani miért.
Nincs $conn változás, nincs semmilyen változás, az egész kódban a php nyitó és zárótegjei vannak, a fent említett két szekció és egy $conn, ami nem változik.
"Adatbázisra, teljes kódra, stb"
Az adatbázisnak semmi köze a hibához, tekintettel arra, hogy az első valtozat lefut. Így a másodiknak is le kellene.
Kipróbáltam, hogy be teszem egyszerre a kettőt, Asql és Bsql (és stb) néven, és ismét ugyan azt mondhatom el, hogy az A kezdetű a tábla sorának egységét adja vissza, a másik pedig 0-ra jön ki a mysqli_num_rows-t tekintve.
A teljes kód ez, az elején egy $conn-nal, ami az A rész eredményének köszönhetően Működik.
Stb alatt nem tudom mit értesz.
"nincs elég információ arra vonatkozóan, hogy mi lehet a problémád."
A problémám az, hogy a fent említett sorok manuálisan beirva működnek, funkcióba építve viszont Nem (erre világítana rá a "mi a különbség ami miatt nem jó a masik" rész a kérdésben).
"Vagy a $conn változód hibás valamiért vagy a $tsql változód."
A $conn változó nem lehet hibás ahogy írtam, mivel akkor az első rész sem adna pozitív eredményt.
A $tsql is hibátlan, mert ha az első megërti, hogy Select uright from users where uname='admin', akkor ugyan ezt a lekérdezést a másiknak is meg Kell tudni érteni.
"Ha nem tudsz egy értelmes kérdést feltenni, minek kérdezel?"
Ez egy értelmes kérdés, pusztán Normális szövegértési képességgel kell rendelkezni ahhoz, hogy megértsd.
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!