SQL query
 
werky 5. jul 2013 13:49:48 Pridružen od:
16. apr 2012
787 objav
796 168 26
#1

Zdravo,



Na nek način moram iz baze dobiti ceno artikla. Le pa se razlikuje glede na "usergroup_id". Tabela izgleda nekako takole:



productid price usergroupid

251 1.0 0

251 2.0 1

251 3.5 3

251 5.2 5



Rabim pa dobiti ceno, glede na productid IN tudi usergroupid...Vse v enem klicu.



Probal sem s tole kodo (testno):



$query = "SELECT price FROM cscart_product_prices WHERE product_id ='251' AND usergroup_id= '0'";


    // Execute Query -----------------------------
$result = mysqli_query($con, $query);

$row = mysqli_fetch_row($result);
$count = $row[0];

if ($count > 0) {
echo "Query works";
} else {
echo "Query doesn't work" ."<br/>";
}

// Display Results -----------------------------

$num_results =mysqli_num_rows($result);

for ($i=0; $i<$num_results; $i++) {
$row = mysqli_fetch_assoc ($result);
//print_r($row);

echo "<br/>" . "Price: " . stripslashes($row['price']);
}

Pa mi ne vrne (izpiše nič)...ČE pa umaknem iz $query "usergroupid" in pustim samo "productid" pa dobim vse cene...Če obrnem (izpustim product_id) pa zopet ne dobim nič....



Torej, morda lahko kdo svetuje kaj delam narobe/kako narediti prav, da bo stvar delala kot sem si zamislil?



lp


všeč(0) ni všeč(0) spam(0)
 
Tody 5. jul 2013 13:55:47 Pridružen od:
3. maj 2010
1446 objav
1411 299 25
#2

Poženi samo query pa boš videl, to kar opisuješ pomeni da nimaš podatkov. Lahko da so kaki presledki kje ali kaj podobnega.


všeč(0) ni všeč(0) spam(0)
![](http://www.internetmojster.com/splosno/dobrodelna-akcija.html)
 
werky 5. jul 2013 14:03:52 Pridružen od:
16. apr 2012
787 objav
796 168 26
#3

Ne, saj pravim, če poženem tole:

$query = "SELECT price FROM cscart_product_prices WHERE product_id ='251' '";



Je ok in vrne ceno za ta productid, ampak če pa v query vključim še usergroupid pa ne vrne nič


všeč(0) ni všeč(0) spam(0)
 
inkanet 5. jul 2013 14:17:34 Pridružen od:
3. okt 2008
328 objav
110 1 2
#4

Mogoče je kaj z navednicami. Nekje imaš ='251' '" drugič pa = '0'"


všeč(0) ni všeč(0) spam(0)
 
werky 5. jul 2013 14:26:36 Pridružen od:
16. apr 2012
787 objav
796 168 26
#5

Napaka pri pisanju na forum...ni to


všeč(0) ni všeč(0) spam(0)
 
Lucifix 5. jul 2013 15:50:45 Pridružen od:
14. okt 2008
744 objav
438 12 0
#6

Zakaj ne probaš pognati SQL stavek direktno v SQL-u (npr Phpmyadmin), da vidiš ali je mogoče težava s samim stavkom oz. bazo ali pa pri izpisu PHP-ja?


všeč(0) ni všeč(0) spam(0)
 
werky 5. jul 2013 18:54:55 Pridružen od:
16. apr 2012
787 objav
796 168 26
#7

Ti sem probal...ubistvo sem ga najprej naredil v phpmyadmin in je stvar šla skozi, preko PHP skripte pa noče...če, kot rečeno, uporabim samo produktid dela, za usergroupid pa noče...


všeč(0) ni všeč(0) spam(0)
 
Lucifix 6. jul 2013 06:28:27 Pridružen od:
14. okt 2008
744 objav
438 12 0
#8

Pa daj namesto stavka:


for ($i=0; $i<$num_results; $i++) {
$row = mysqli_fetch_assoc ($result);
//print_r($row);

echo "<br/>" . "Price: " . stripslashes($row['price']);
}

Raje uporabi:


while($row = mysqli_fetch_array($result))  {
echo "<br/>" . "Price: " . stripslashes($row['price']);
}
všeč(1) ni všeč(0) spam(0)
 
werky 6. jul 2013 07:23:55 Pridružen od:
16. apr 2012
787 objav
796 168 26
#9

Nekaj je naredilo...Samo tole kar se meni dogaja je rahlo čudno, ali pa sem jaz kaj zgrešil...



Namreč, če dam tole:

$query = 'SELECT price FROM cscart_product_prices WHERE usergroup_id= "0"';



Bi mi moral izpisati dve ceni, ker sta za ta usergroupid dve ceni notri, a izpiše samo eno, manjšo vrednost...

Če vpišem tole:

$query = 'SELECT price FROM `cscart
productpricesWHEREproductid`= "251"';

Mi vrne vse tri cene, urejene po usergroupid in ne po vrsti (naprimer vrne cene 4,3,5 kar je enako usergroupid 3,5,8)



Če pa uporabmi enak query, le da zamenjam številko product_id na 252 pa ne vrne ničesar, čeprav cena je notri...



Tako da res nevem kje imam težave.



Hvala za pomoč.


všeč(0) ni všeč(0) spam(0)
 
Lucifix 6. jul 2013 13:30:41 Pridružen od:
14. okt 2008
744 objav
438 12 0
#10

Se ravno odpravljam ven, ko pridem nazaj bom pa pri sebi preveril in ti javim kako in kaj.


všeč(0) ni všeč(0) spam(0)
 
 

🔒 Za odgovor na to temo se moraš prijaviti.

Prijavi se