Kezdőoldal » Számítástechnika » Programozás » PHP MySQL - Nem fut le a...

PHP MySQL - Nem fut le a lekérdezésem. Miért?

Figyelt kérdés

Ez egy webshop.

A "Kosárba" kattintás után egy $_SESSION['cart'][x] változóban tároljuk, hogy melyik product_id lett hozzáadva...


cart.php

Ez kéne, hogy megmutassa mi van a kosárban úgy, hogy az $_SESSION['cart'] x. helyén lévő dolgokat lekérdezi az adatbázisból.


A kód:

$sql = "SELECT * FROM products WHERE product_id = ".$_SESSION['cart'][1];

for($i = 2; $i <= count($_SESSION['cart']); $i++){

....$sql .= " AND product_id = ".$_SESSION['cart'][$i];

}

echo $sql;


Az echo $sql eredménye: SELECT * FROM products WHERE product_id = 24 AND product_id = 7

Tehát ez alapján szintaktikailag a mysql_query-nek simán futnia kéne, de ennek ellenére nem történik semmi...


while($sor = mysql_fetch_array(mysql_query($sql))){

....echo $sor['name'];

}


Nothing


Felmerülő válaszok:

....Nem akarok mysqli-t használni, mert a webshop nem kerül élesbe ki

....Az $_SESSION['cart'] szándékosan 1-től kezdődik

....Próbáltam a SELECT * FROM products WHERE product_id IN (7,24), de nem történt semmi

....Próbáltam a while($sor = mysql_fetch_array($sqlquery))-t is ilyenné rövídíteni hátha, de nem történt semmi

....A phpmyadmin SQL fül alá ha beírom a fent említett SQL-t akkor ott viszont simán lefut, kiírja az eredményeket...

....Egyszer kaptam egy olyan szöveget, hogy a query túllépte a 30 másodperces dolgot (az angol szöveg nincs meg, de ez volt a lényege) már egy ideje ennyi outputot se kapok

....Ha a while ciklusba bebiggyesztek egy echo "Sajt"; akkor még azt sem írja ki


:(



2014. márc. 20. 00:38
 1/4 anonim ***** válasza:
100%

Nem fut le mert hülyeséget csinálsz :D :D :D :D :D


SELECT * FROM products WHERE product_id = 24 AND product_id = 7


Azt mondod, kéred azokat a sorokat, amiknek az azonosítója egyszerre 24 és 7, ilyen nem létezhet :D :D :D :D :D


AND helyett OR kell, ennyi

2014. márc. 20. 00:46
Hasznos számodra ez a válasz?
 2/4 A kérdező kommentje:
Ha hülyeség akkor phpmyadminban miért mutatja mind a két sort AND használatával?
2014. márc. 20. 09:07
 3/4 anonim ***** válasza:

phpmyadmin egy fos, használd a MySQL Workbench -et, vagy a régi egyszerű mysqlcc -t, ott nem fognak csodák történni.


Amúgy csak gondold át, lehet valami egyszerre 1 és 2?

A következtetésből rájössz miért hülyeség az AND, és rájössz hogy valamit félrenéztél...

2014. márc. 20. 11:31
Hasznos számodra ez a válasz?
 4/4 anonim ***** válasza:

És itt egy tutorial ha még kételkednél:

[link]

2014. márc. 20. 11:33
Hasznos számodra ez a válasz?

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

A weboldalon megjelenő anyagok nem minősülnek szerkesztői tartalomnak, előzetes ellenőrzésen nem esnek át, az üzemeltető véleményét nem tükrözik.
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!