PHP Όλες σας οι απορίες.

...ασύγχρονα μαθήματα γλώσσας PHP

Re: PHP Όλες σας οι απορίες.

Δημοσίευσηαπό ktogias » 28 Ιαν 2014, 11:29

Και αυτό που λες μπορεί να γίνει χωρίς session... Σε αυτό το if που σου εμφανίζει την πρώτη πρέπει να προσθέσεις και έναν έλεγχο αν υπάρχει κάποια POST var από τη δεύτερη φόρμα. Το θέμα βέβαια μετά είναι το πως διατηρείς τα δεδομένα που υποβλήθηκαν μέσω της πρώτης φόρμας μετά το submit της δεύτερης. Αν δεν έχεις κώδικα που βάζει σε κάποια βάση, κάποιο session ή κάποιο άλλο persistency μηχανισμό αυτά τα δεδομένα, μπορείς να παίξεις με hidden inputs στη δεύτερη φόρμα. Π.χ.
Μορφοποιημένος Κώδικας: Επιλογή όλων
<?php if (empty($_POST['first_form']) && empty($_POST['second_form'])):?>
<form method="post" ....>
<input type="hidden" name="first_form" value = "1" />
<input type="text" name="firstname" value = .... />
<input type="text" name="lastname" value = .... />
...................
</form>
<?php elseif (empty($_POST['second_form'])):?>
<form method="post" ....>
<input type="hidden" name="second_form" value = "1" />
<input type="hidden" name="firstname" value = "<?php echo $_POST['firstname'];?>" />
<input type="hidden" name="lastname" value = "<?php echo $_POST['lastname'];?>" />
<select name="gender">
<option value="M" ......... >Male</value>
<option value="F" ........ >Female</value>
</select>
......................
</form
<?php else:?>
<p>Και οι δύο φόρμες έχουν υποβληθεί:</p>
<p>Firstname: <?php echo $_POST['fistname'];?></p>
<p>Lastname: <?php echo $_POST['lastname'];?></p>
<p>Gender: <?php echo $_POST['gender'];?></p>
<?php endif;?>


Για τoυς ελέγχους θα μπορούσες αντί για hidden inputs να χρησιμοποιήσεις οποιοδήποτε όνομα input που εμφανίζεται μόνο στη μία φόρμα, όπως π.χ. το όνομα του κουμπιού submit (input type="submit") της καθεμίας.
Δες για τα hidden inputs εδώ: http://www.echoecho.com/htmlforms07.htm
ktogias
dudeTUX
dudeTUX
 
Δημοσιεύσεις: 305
Εγγραφή: 10 Μάιος 2008, 22:52
IRC: ktogias
Εκτύπωση

Προηγούμενη

Επιστροφή στο Μαθήματα PHP

cron