Traktor Δημοσ. 9 Φεβρουαρίου 2011 Δημοσ. 9 Φεβρουαρίου 2011 θα ήθελα την βοήθεια σας σε κάτι.Το πρόβλημα μου είναι ότι φτιάχνω μια ιστοσελίδα και συγκεκριμένα ένα γαλοπ.θέλω λοιπόν όταν επιλέγω ένα από τα κλασικά radio buttons να ενημερώνει στην βάση δεδομένων. βρήκα κάποια παραδείγματα αλλά δεν με βοήθησαν πολύ όπως " if ($_REQUEST['answers']) { mysql_query("UPDATE users SET answer='$answer' WHERE id='" . $id . "'") or die(mysql_error()); } " λοιπόν εγώ θέλω το εξής " AN ειναι το Α επιλεγμένο τοτε ενημερώνεις το πεδίο q_A ΑΛΛΙΩΣ ΑΝ είναι το Β επιλεγμένο τοτε ενημερώνεις το πεδίο q_B ΑΛΛΙΩΣ ΑΝ ειναι το ........................ ................................. " και συγνώμη αν σας κούρασα
_tasos Δημοσ. 9 Φεβρουαρίου 2011 Δημοσ. 9 Φεβρουαρίου 2011 Τη λογική που περιγράφεις δεν μπορείς να την υλοποιήσεις με ένα Sql Query. Είναι πιο εύκολο να γράψεις στη php μία λογική if() {...} else if() {...} για κάθε απάντηση και να έχεις διαφορετικό UPDATE statement για κάθε απάντηση.
thanocaster Δημοσ. 10 Φεβρουαρίου 2011 Δημοσ. 10 Φεβρουαρίου 2011 Σύμφωνα με τον κώδικα που έχεις ήδη παραθέσει, αλλά και εφαρμόζοντας αυτό που σου είπε ο Τάσος: > // Ας πούμε ότι έχεις τον παρακάτω κώδικα στη φόρμα σου για επιλογή με radio buttons <input type="radio" value="firefox" name="browser"><label>Firefox</label> <input type="radio" value="ie" name="browser"><label>Internet Explorer</label> <input type="radio" value="safari" name="browser"><label>Safari</label> <input type="radio" value="opera" name="browser"><label>Opera</label> Η αντίστοιχη php θα ήταν: > if ($_POST["browser"] == "firefox") { $browser = "Firefox"; $field = "q_A"; } else if ($_POST["browser"] == "ie") { $browser = "Internet Explorer"; $field = "q_B"; } else if ($_POST["browser"] == "safari") { $browser = "Safari"; $field = "q_C"; } else if ($_POST["browser"] == "opera") { $browser = "Opera"; $field = "q_D"; } mysql_query("UPDATE users SET ".$field."='".$browser."'" WHERE id='".$id."'") or die(mysql_error()); Με τον παραπάνω κώδικα, υπάρχει η προϋπόθεση ότι έχεις 4 διαφορετικά πεδία στη βάση σου (όπως τα ζήτησες, q_A, q_B, q_C, q_D), και ανάλογα ποιον browser θα επιλέξεις στη φόρμα σου, το αντίστοιχο πεδίο θα πάρει την τιμή που ορίζεις στη μεταβλητή $browser. Επίσης, αν θέλεις οι μεταβλητές της φόρμας σου να αποστέλλονται με GET method, απλά αλλάζεις όπου: > $_POST["browser"] σε: > $_GET["browser"] Τέλος, στο sql query που έχεις παραθέσει, θεωρώ ότι έχ εις ήδη βρει τον τρόπο να βρίσκεις ποιά σειρά του πίνακά σου ενημερώνεις (μέσω του id της).
Προτεινόμενες αναρτήσεις
Αρχειοθετημένο
Αυτό το θέμα έχει αρχειοθετηθεί και είναι κλειστό για περαιτέρω απαντήσεις.