value απο hidden μεσω php

Σε αυτή την περιοχή μπορείτε να βρείτε ή να αναζητήσετε πληροφορίες σχετικές με την PHP

Συντονιστές: WebDev Moderators, Super-Moderators, PHP Moderators

Απάντηση
charkoul
Δημοσιεύσεις: 30
Εγγραφή: 20 Ιουν 2011 13:47

value απο hidden μεσω php

Δημοσίευση από charkoul » 15 Δεκ 2012 12:24

καλημερα εχω το παρακατω κομματι κωδικα

Κώδικας: Επιλογή όλων

<?php

$userId=$_GET&#91;'userId'&#93;;						

$sql="SELECT ListName, id FROM list
WHERE UserId='$userId'";															//ερωτηση για να βρω τις λιστες ListNames

$res=mysql_query&#40;$sql,$con&#41;or die&#40;mysql_error&#40;&#41;&#41;;
$numOfList=mysql_num_rows&#40;$res&#41;;												//ψαχνω ποσες ειναι οι εγγραφες του πινακα
if &#40;$numOfList==0&#41;&#123;
	echo "<war_ajax>Δεν έχετε προσθέσει καμία λίστα</war_ajax>";
&#125;
else&#123;
	echo 
		"<form method='post' action='list.php'	
		<table width='400' name='list' id='list'>
  			<tr>
    			<th colspan='3'>Λιστα Εργασιων</th>
  			</tr>";
  	while &#40;$list=mysql_fetch_array&#40;$res&#41;&#41;&#123;									
		$idList=$list&#91;'id'&#93;;
		$listName=$list&#91;'ListName'&#93;;
		echo "<tr>
    			<td><a href='tasks.php?id=$idList'>$listName</a></td>
    			<td width='100'><input name='delete' type='submit' value='Διαγραφη'&#41;></td>
     			<td width='100'><input name='modify' type='submit' value='Επεξεργασια'></td>
  			</tr>";
		
	
	&#125;
	echo "</table></form>";
&#125;

?>
Πως γινεται πατωντας το κουμπι να παιρνω το $idList ωστε να επεξεργαζομαι ή να διαγραφω τη λιστα?

εχω σκεφτει να το κανω με hidden input οπου το value του θα ειναι το $idList αλλα δεν ξερω πως να τραβηξω την τιμη.

αδιεξοδο :(

alou
Script Master
Δημοσιεύσεις: 1374
Εγγραφή: 24 Αύγ 2007 19:52
Επικοινωνία:

value απο hidden μεσω php

Δημοσίευση από alou » 15 Δεκ 2012 13:47

Δεν ξέρω τι ακριβώς κάνεις με αυτό αλλά υπάρχουν δυο τρόποι, αν θες να το έχεις διαθέσιμο στην php μετά το submit, απλά θα φτιάξεις ένα hidden input με name="something" και θα το πάρεις στο php αρχείο που δηλώνεται σαν action της φόρμας με post η get ανάλογα.

Κώδικας: Επιλογή όλων

$listid=$_GET&#91;'something'&#93;; 
Η άλλη περίπτωση είναι να το πάρεις με javascript:

Κώδικας: Επιλογή όλων

document.getElementById&#40;'something'&#41;.value
Όπου something το id του hidden input.[/code]

charkoul
Δημοσιεύσεις: 30
Εγγραφή: 20 Ιουν 2011 13:47

value απο hidden μεσω php

Δημοσίευση από charkoul » 15 Δεκ 2012 14:18

αυτο που κανω εμφανιζει κατι τετοιο

Λιστα Εργασιων
ονομα λιστας 1| κουμπι=Διαγραφη | κουμπι=Επεξεργασια
ονομα λιστας 2| κουμπι=Διαγραφη | κουμπι=Επεξεργασια
ονομα λιστας 3| κουμπι=Διαγραφη | κουμπι=Επεξεργασια

θα φτιαξω script που πατωντας το κουμπι διαγραφη ή επεξεργασια θα διαγραφέι ή θα επεξεργαζεται τις εγγραφες στη βαση.Το θεμα ειναι πως θα τραβηξω το idList?

εχω δοκιμασει να βαλω στη φορμα

Κώδικας: Επιλογή όλων

<form action='list.php?id=$idList' method='post>'


αλλα μολις παταω ενα απο αυτα τα κουμπια μου διχνει ανω στο url list.php?'κουμπι_που_πατησα=τιμη'

γι αυτο ελεγα αν γινετια με hidden πεδιο, αλλα και πως παιρνιοντια οι τιμες μετα

alou
Script Master
Δημοσιεύσεις: 1374
Εγγραφή: 24 Αύγ 2007 19:52
Επικοινωνία:

value απο hidden μεσω php

Δημοσίευση από alou » 15 Δεκ 2012 15:09

Όταν κάνεις post δεν υπάρχουν παράμετροι στο url. Πάμε ένα παράδειγμα:

Κώδικας: Επιλογή όλων

<form action="list.php" method="post">
<input type="hidden" name="valueA" value="12345">
<input type="hidden" name="valueB" value="67890">
<input type="submit" value="send form">
Τώρα, στο list.php

Κώδικας: Επιλογή όλων

<?php

$metavlitiA = $_POST&#91;'valueA'&#93;; //pairneis ta values twn antistoixwn input
$metavlitiB = $_POST&#91;'valueB'&#93;;

echo $metavlitiA; //θα δείξει&#58; 12345 αν έχεις κάνει submit την προηγούμενη φόρμα
echo $metavlitiB; //θα δείξει&#58; 67890

//an exei ginei post kai iparxei kapoia timi sti metavliti
if&#40;$metavlitiA&#41; &#123;
//kane pragmata me tin timi tou tade input pou pires
&#125;
και κάπως έτσι παίρνεις και χρησιμοποιείς αυτά που θες.

Οτιδήποτε τιμές παίρνεις, ανάλογα με τη χρήση που θα κάνεις καλό θα είναι να εξασφαλίζεις ότι δεν περιέχουν κάτι κακόβουλο, υπάρχουν διάφοροι τρόποι να το κάνεις ανάλογα με τις ανάγκες που υπάρχουν.

charkoul
Δημοσιεύσεις: 30
Εγγραφή: 20 Ιουν 2011 13:47

value απο hidden μεσω php

Δημοσίευση από charkoul » 15 Δεκ 2012 17:14

Eυχαριστω!

Δεν ηξερα οτι καλοντας το name hidden σου δινει την τιμη της value

Άβαταρ μέλους
Banavas
Script Master
Δημοσιεύσεις: 1367
Εγγραφή: 21 Νοέμ 2004 20:25
Επικοινωνία:

value απο hidden μεσω php

Δημοσίευση από Banavas » 16 Δεκ 2012 12:59

Κάθε γραμμή που εμφανίζει η while έχει ένα δικό της ID. Κάθε φορά που κάνει το loop η while, το ID πέρνει νέα τιμή. Αυτό σημαίνει ότι αν βάλεις ένα hidden πεδίο ή στο action τότε θα πέρνεις πάντα την τελευταία τιμή του loop.
Θα πρέπει να κρατήσεις την τιμή του ID σε κάθε γραμμή του loop. Αυτό μπορεί να γίνει κάπως έτσι:

Κώδικας: Επιλογή όλων

        <td><a href='tasks.php?id=$idList'>$listName</a></td> 
             <td width='100'><a href="task.php?delete=<? Echo $idList; ?>" <Img src= "delicon.jpg"></a></td> 
     
Μπορείς να στέλνεις τα δεδομένα στην ίδια σελίδα και να ελεγχεις αν έχει ορισθεί η delete οπότε να εκτελείται την διαγραφή της εγγραφής με ID την τιμή της delete.
[/code]
Happy coding....
Μάρκος
http://lasernet.gr

charkoul
Δημοσιεύσεις: 30
Εγγραφή: 20 Ιουν 2011 13:47

value απο hidden μεσω php

Δημοσίευση από charkoul » 21 Δεκ 2012 12:06

Banavas έγραψε:Κάθε γραμμή που εμφανίζει η while έχει ένα δικό της ID. Κάθε φορά που κάνει το loop η while, το ID πέρνει νέα τιμή. Αυτό σημαίνει ότι αν βάλεις ένα hidden πεδίο ή στο action τότε θα πέρνεις πάντα την τελευταία τιμή του loop.
Θα πρέπει να κρατήσεις την τιμή του ID σε κάθε γραμμή του loop. Αυτό μπορεί να γίνει κάπως έτσι:

Κώδικας: Επιλογή όλων

        <td><a href='tasks.php?id=$idList'>$listName</a></td> 
             <td width='100'><a href="task.php?delete=<? Echo $idList; ?>" <Img src= "delicon.jpg"></a></td> 
     
Μπορείς να στέλνεις τα δεδομένα στην ίδια σελίδα και να ελεγχεις αν έχει ορισθεί η delete οπότε να εκτελείται την διαγραφή της εγγραφής με ID την τιμή της delete.
Ευχαριστω, αυτος ειναι ο τροπος που ηθελα :)

Απάντηση

Επιστροφή στο “PHP Προγραμματισμός”

Μέλη σε σύνδεση

Μέλη σε αυτήν τη Δ. Συζήτηση: Δεν υπάρχουν εγγεγραμμένα μέλη και 0 επισκέπτες