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

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

Δημοσ. (επεξεργασμένο)

Καλησπέρα,

 

χρησιμοποιώ την $_POST για να περάσω κάτι δεδομένα και δουλεύει μια χαρά όταν πρόκειται για μια λέξη. Όταν προσπαθώ να περάσω 2 λέξεις όπως "Άσπρο αρνάκι" μου περνάει μόνο η πρώτη λέξη δηλαδή το "Άσπρο".

 

τα στέλνω κανονικά με:

><input type="text" value="" name="some" />

 

και τέλος,

>echo $_POST['some']

 

μπορεί κάποιος να προτείνει καμια λύση γτ έχω ψάξει στο google και δεν βοήθησε απο ότι κατάλαβα? :/ Θα ήθελα να αποφύγω να σπάσω το αρχικό σε δυο μεταβλητές και να περάσω και τις δυο και να τις ενώσω κτλ. αν υπάρχει κάτι που δεν γνωρίζω και είναι σχετικά απλό θα με βοηθούσε πολυ!

 

ευχαριστώ πολυ!

Επεξ/σία από poscore
Δημοσ.

προσπαθησε να κανεις το εξης,οσον αφορα την πρωτη γραμμη του κωδικα σου:

><input type="text" name="some" />

και επισης

>echo $_POST['some']

(προσεχε τα μικροσυντακτικα λαθη σου)

επισης,που θελεις να τα περασεις,οπως λες?σε καποιο αρχειο submit.php για παραδειγμα για να συνεχισεις διεργασιες κτλπ με βαση αυτο?

Δημοσ. (επεξεργασμένο)

Τι έχεις αλλάξει στον κώδικα? :/ Βασικά την ιδέα ψάχνω όχι συντακτικό λάθος κτλ. μην κολάτε σε αυτά pls...

 

και ναι σκοπεύω να τα περάσω σε άλλο αρχείο όπως λες...

Επεξ/σία από poscore
Δημοσ. (επεξεργασμένο)

στον κωδικα αυτο που αλλαξα ηταν το συντακτικο λαθος και απο το input εβγαλα το value="" .

το value δεν χρειαζεται να το ορισεις.αφου παιρνεις τιμη απο τον χρηστη.

η ιδεα ειναι απλη.εχεις ενα input field που το αντιστοιχεις σε ενα ονομα(name="ταδε")

οποτε μετα αναλογα με το action που εχεις ορισει στην form σου,μπορεις να το περασεις σε αλλο αρχειο κτλπ..

 

αυτο δεν εννοεις?ή δεν καταλαβα σωστα?

Επεξ/σία από koslibpro
Δημοσ.

Τα πράγματα είναι απλά. Έχω υλοποιήσει πολλά post και δουλεύουν! Γνωρίζω πως να τα κάνω δεν έιναι εκεί το θέμα. Απλά όταν παω να κάνω POST κάτι που αποτελείται απο 2 λέξεις δεν δουλεύει! Δοκίμασε το να καταλάβεις τι εννοώ

Δημοσ.

As you want :) Το παρακάτω είναι ένα dropdown menu που έχει κάποιες επιλογές.

 

>
<th> Κατηγορία: </th>
  <td> <?php
 $query="SELECT category FROM categories ";
 $result = mysql_query ($query);
   ?>
 <select style="width: 146px" name="output10">
  <option value=""> </option>
   <?php
 while($nt=mysql_fetch_array($result)){
  echo "<option value=$nt[category]>".$nt[category]."</option>";
 }
 echo "</select>";
   ?>
  </td>

Δημοσ. (επεξεργασμένο)

Εμ αφού δεν βάζεις το value μέσα σε εισαγωγικά όπως πρέπει βάσει του specification της HTML τι περιμένεις να γίνει;

 

Update: Αν μιλάμε για HTML5, διάβασε οπωσδήποτε αυτό.

 

>
while($nt=mysql_fetch_array($result)){
printf('<option value="%1$s">%1$s</option>', htmlspecialchars($nt['category']));
}

 

 

Σκέψου ότι περιμένεις αυτό να δουλέψει (δηλαδή να είναι disabled το input):

 

><input type="text" value=foo disabled />

 

Προφανώς δεν είναι δυνατό να μαντέψει κανείς αν θέλεις το παραπάνω ή αν απλά το value είναι οι 2 λέξεις "foo disabled", οπότε βάζουμε πάντα εισαγωγικά και τελειώνει η υπόθεση.

 

 

 

Έβαλα και την htmlspecialchars μέσα στο παιχνίδι γιατί πάντα πρέπει να τη χρησιμοποιείς όταν κάνεις output strings που δεν είναι hardcoded. Επίσης, πρέπει να δώσεις τη 2η και 3η παράμετρο της htmlspecialchars γιατί αλλιώς είτε δε θα δουλέψει σωστά είτε θα δουλέψει σωστά "κατά τύχη" (δεν το κάνω εδώ γιατί δεν ξέρω τι τιμές πρέπει να πάρουν στην περίπτωσή σου).

Επεξ/σία από defacer
Δημοσ.

Αν προσπαθήσω να βάλω το value σε ' ' ή " " θα μου χτυπήσει! Νομίζεις πως το ήθελα εγώ έτσι? :P Θα επεξεργαστώ λίγο τον κώδικά σου, σε ευχαριστώ για την απάντηση.

Δημοσ.
:P χαχαχα σόρρυ είναι μια έκφραση-συνήθεια απο την C που χτυπάει ο compiler :P Εννοώ δεν θα δουλέψει :/ Θα κάνω δοκιμές και επανέρχομαι :)
Δημοσ.

Άμα το θέλεις με echo, πρέπει να το κάνεις έτσι:

>echo "<option value='".$nt[category]."'>".$nt[category]."</option>";

 

Αυτό:

>echo "<option value="$nt[category]">".$nt[category]."</option>";

θα σου χτυπήσει συντακτικό λάθος

 

και αυτό:

>echo "<option value='$nt[category]'>".$nt[category]."</option>";

θα σου πει ότι δε μπορείς να χρησιμοποιήσεις έτσι τον πίνακα - δε θυμάμαι ακριβώς τι γράφει και ούτε και ξέρω το λόγο, ίσως ο defacer μας βοηθήσει εδώ

Δημοσ.

:P χαχαχα σόρρυ είναι μια έκφραση-συνήθεια απο την C που χτυπάει ο compiler :P Εννοώ δεν θα δουλέψει :/ Θα κάνω δοκιμές και επανέρχομαι :)

 

Ναι, δεν το ακούω πρώτη φορά... αυτό που εννοούσα είναι ότι δεν υπάρχει τίποτα να χτυπήσει εκεί πέρα από συντακτικό λάθος.

 

και αυτό:

>echo "<option value='$nt[category]'>".$nt[category]."</option>";

θα σου πει ότι δε μπορείς να χρησιμοποιήσεις έτσι τον πίνακα - δε θυμάμαι ακριβώς τι γράφει και ούτε και ξέρω το λόγο, ίσως ο defacer μας βοηθήσει εδώ

 

Γράφει ότι το category (χωρίς εισαγωγικά) στο

 

>.$nt[category].

 

θα έπρεπε να έχει οριστεί constant αλλά κάτι τέτοιο δεν έχει γίνει, γι' αυτό το λόγο η PHP το μεταχειρίζεται σαν το string "category". Δηλαδή σα να είχες κάνει πρώτα

 

>define("category", "category");

 

Για να μην υπάρχει θέμα πρέπει να μπουν εισαγωγικά γύρω από το category, δηλαδή

>echo "<option value='$nt[category]'>".$nt['category']."</option>";

 

Βεβαίως εισαγωγικά μόνο όταν το $nt[...] είναι εκτός του string, γιατί μέσα στο string δε χρειάζεται εισαγωγικά -- μπορείς να βάλεις βέβαια, αλλά μετά πρέπει να βάλεις και αγκύλες:

 

>echo "<option value='{$nt['category']}'>".$nt['category']."</option>";

 

PHP

:eek: :eek: :eek:

Δημοσ. (επεξεργασμένο)

Οκ, το πρώτο φαίνεται λογικό και δεν μπορώ να θυμηθώ αν το είχα χρησιμοποιήσει. Φαίνεται να δουλεύει αλλά όχι! Το category είναι ένας πίνακας απο κατηγορίες οκ? Επιλέγω μια κατηγορία απο αποτελείται απο 2 λέξεις όπως, "Ιατρική Φωτογραφία" και αφού το πάρει εκτυπώνει "Ιατρική". Αυτή τη στιγμή ψήνει και μπριζόλες το κεφάλι μου... :(

 

 

ΟΚ τέλος...silly mistakes :( Παιδιά, ευχαριστώ για κάθε απάντηση και για τον χρόνο που διαθέσατε :)

Επεξ/σία από poscore
Δημοσ.

παροξυσμός

 

>
<option value="<?php echo $nt['category']; ?>">
<?php echo $nt['category']; ?>
</option>

 

PHP <3 :P

 

ΥΓ> Η php καλό είναι να μην κάνει ποτέ print html κώδικα. Προσωπική επιλογή.

  • Like 1

Δημιουργήστε ένα λογαριασμό ή συνδεθείτε για να σχολιάσετε

Πρέπει να είστε μέλος για να αφήσετε σχόλιο

Δημιουργία λογαριασμού

Εγγραφείτε με νέο λογαριασμό στην κοινότητα μας. Είναι πανεύκολο!

Δημιουργία νέου λογαριασμού

Σύνδεση

Έχετε ήδη λογαριασμό; Συνδεθείτε εδώ.

Συνδεθείτε τώρα
  • Δημιουργία νέου...