Προς το περιεχόμενο

Μικρή βοήθεια σε php και sql


chris_psycho

Προτεινόμενες αναρτήσεις

Δημοσ.

Θέλω από μία βάση δεδομένων που έχει τα εξής:

 

id, catid, userid και score

 

Θέλω να κάνω με ένα αρχείο php τη σύνδεση με την βάση δεδομένων που νομίζω ότι γίνεται έτσι:

 

>$result = mysql_query("SELECT * FROM scores");
$userid = mysql_fetch_array(mysql_query("SELECT * FROM users WHERE user='".USERNAME."'"));
$userid = $userid['id'];

 

και μετά αν το score είναι πχ. πάνω από 3 στην κατηγορία με catid=2 να εμφανίζεται ένα μήνυμα.

Αν το score στην κατηγορία με catid=3 είναι πάνω από 4 να εμφανίζεται από κάτω και ένα άλλο μήνυμα.

 

Μπορείτε να βοηθήσετε? Σας ευχαριστώ πάρα πολύ προκαταβολικά!

Δημοσ.

ρε παιδιά δείτε λίγο γιατί έχω μπερδευτεί:

 

>$result = mysql_query("SELECT * FROM scores");
$userid = mysql_fetch_array(mysql_query("SELECT * FROM users WHERE user='".USERNAME."'"));
$userid = $userid['id'];

while($row = mysql_fetch_array($result))

 {
 
if (($row['score']==5) && ($userid==$row['userid']) && ($row['catid']== 6)){
  if (($row['score']>=4) && ($userid==$row2['userid']) && ($row['catid']== 7))
{echo "...";}

if (($row['score']==5) && ($userid==$row['userid']) && ($row['catid']== 6)){
  if (($row['score']>=4) && ($userid==$row['userid']) && ($row['catid']== 2)){
if (($row['score']>=4) && ($userid==$row['userid']) && ($row['catid']== 3))
{echo "...";}

Δηλαδή η βάση δεδομένων μου έχει:

 

id catid userid score

11 1 1 3

12 2 1 4

13 3 1 2

14 4 1 5

15 5 1 4

16 6 1 5

17 7 1 5

18 8 1 4

 

Και θέλω αν ο χρήστης είναι αυτός που έχει κάνει login (όπως το έχω δηλ.) και έχει score στην κατηγορία 4 μεγαλύτερο από 4 (catid>=4) και στην κατηγορία 5 μεγαλύτερο από 3 (catid>=3) τότε να βγαίνει ένα μήνυμα, αλλιώς αν... και αν... να βγαίνει ένα άλλο μήνυμα. Αν ισχύουν και οι 2 περιπτώσεις να βγαίνει το ένα μήνυμα κάτω από το άλλο!

 

Μπορεί κανείς να βοηθήσεις;;

Δημοσ.

Βρες πρώτα το userid και μετά επέλεξε τα rows από το table scores που αντιστοιχούν μόνο σε αυτό το χρήστη. Οι if() από εκεί και πέρα είναι εύκολη υπόθεση.

 

>
$userid = mysql_result(mysql_query("SELECT id AS userid FROM users WHERE username = 'USERNAME' "), "userid");

$result = mysql_query("SELECT * FROM scores WHERE userid = $userid ");

while($data = mysql_fetch_array($result)) {
 if($data[catid] == X && $data[score] == Y)
    echo "You message.";
 if(...)
    echo "...";
 ....
}

 

Ελπίζω να βοήθησα.

Αρχειοθετημένο

Αυτό το θέμα έχει αρχειοθετηθεί και είναι κλειστό για περαιτέρω απαντήσεις.

  • Δημιουργία νέου...