Comment envoyé un $_POST via <form> sans submit, boucle while
nohay
Messages postés
7
Statut
Membre
-
Alain_42 Messages postés 5413 Statut Membre -
Alain_42 Messages postés 5413 Statut Membre -
Bonjour,
Bonjour belle et magnifique communauté,
J'ai un problème assez similaire à celui de shuruga https://forums.commentcamarche.net/forum/affich-7617623-php-envoyer-post-data-avec-a-href et pour l'occasion je fait un up de près de 3ans je m'en excuse par avance mais pour le coup je ne sais vraiment pas comment faire...
J'ai 5 liste qui sont bouclé à l'aide de while() et qui proviennent de ma base de donnée.
Ci-dessous une de ces 5 listes :
EXTRAIT page1.php
j'ai essayer ceci mais ça ne fonctionne pas, le code envoie le mail du premier élément de ma liste, j'imagine qu'il y a un problème avec ma boucle... ?
C'est en fait un espace membre, j'utilise l'adresse mail des membres pour qu'il puisse se connecter. Une fois inscrit, ils peuvent "uploader" différents médias, pour au final obtenir une galerie.
Si je l'envoie à l'aide de $_POST['mail'] c'est parce que j'utilise $_SESSION['mail'] pour les uploads de membre et aussi la consultation de sa galerie quand il est connecté, alors que $_POST['mail'] doit servir à identifier chaque mail récupérer dans la boucle... Pour ensuite afficher la galerie de chaque membre répertorié par liste... sans prendre en considération le $_SESSION['mail'].
Comme j'ai essayé de faire en page2 :
EXTRAIT page2.php
voilà si ça manque de clarté, faite moi signe.
PS: "l'indentation c'est enlevé d'elle même".
Bonjour belle et magnifique communauté,
J'ai un problème assez similaire à celui de shuruga https://forums.commentcamarche.net/forum/affich-7617623-php-envoyer-post-data-avec-a-href et pour l'occasion je fait un up de près de 3ans je m'en excuse par avance mais pour le coup je ne sais vraiment pas comment faire...
J'ai 5 liste qui sont bouclé à l'aide de while() et qui proviennent de ma base de donnée.
Ci-dessous une de ces 5 listes :
EXTRAIT page1.php
<p id="col1">A-B</p>
<?php
}
// colone 1
$reponse = $bdd->query('SELECT * FROM membre
WHERE nom LIKE \'a%\' OR nom LIKE \'b%\'
ORDER BY nom ASC LIMIT 0,20');
while ($donnee = $reponse -> fetch())
{
?>
<form id="mail" method="post" action="page2.php">
<ul id="col1" class="no_decoration">
<li>
<a class="hover" href="#" onclick='document.getElementById("mail").submit()'>
<input type="hidden" name="mail" value="<?php echo $donnee['mail']; ?>"/>
<?php echo $donnee['nom'].' '; ?><?php echo $donnee['prenom']; ?></a>
</li>
</ul>
</form>
<?php
}
{
?>
j'ai essayer ceci mais ça ne fonctionne pas, le code envoie le mail du premier élément de ma liste, j'imagine qu'il y a un problème avec ma boucle... ?
C'est en fait un espace membre, j'utilise l'adresse mail des membres pour qu'il puisse se connecter. Une fois inscrit, ils peuvent "uploader" différents médias, pour au final obtenir une galerie.
Si je l'envoie à l'aide de $_POST['mail'] c'est parce que j'utilise $_SESSION['mail'] pour les uploads de membre et aussi la consultation de sa galerie quand il est connecté, alors que $_POST['mail'] doit servir à identifier chaque mail récupérer dans la boucle... Pour ensuite afficher la galerie de chaque membre répertorié par liste... sans prendre en considération le $_SESSION['mail'].
Comme j'ai essayé de faire en page2 :
EXTRAIT page2.php
<?php
if (isset($_POST) AND $_POST['mail']!="")
{
$dos = "uploads/$_POST[mail]/min/";
$dir = opendir($dos);
while($_FILES = readdir($dir))
{
$allow_ext = array("jpg","png","gif");
$ext = strtolower(substr($_FILES,-3));
if(in_array($ext,$allow_ext))
{
?>
<a href="ma_collection_detail.php">
<img src="uploads/<?php echo $_POST['mail']?>/min/<?php echo $_FILES; ?>"/></a>
<?php
}
}
}
else
{
if($_POST['mail']="")
$dos = "uploads/$_SESSION[mail]/min/";
$dir = opendir($dos);
while($_FILES = readdir($dir))
{
$allow_ext = array("jpg","png","gif");
$ext = strtolower(substr($_FILES,-3));
if(in_array($ext,$allow_ext))
{
?>
<a href="ma_collection_detail.php">
<img src="uploads/<?php echo $_SESSION['mail']?>/min/<?php echo $_FILES; ?>"/></a>
<?php
}
}
}
?>
voilà si ça manque de clarté, faite moi signe.
PS: "l'indentation c'est enlevé d'elle même".
A voir également:
- Comment envoyé un $_POST via <form> sans submit, boucle while
- Peut on écouter un message vocal envoyé - Forum Mail
- Message non envoyé - Forum Mobile
- Google form sans compte google - Forum Google Docs
- Envoyé de mon iphone - Guide
- Mon pc s'allume et s'éteint en boucle - Forum Matériel & Système
5 réponses
Bonjours,
Pourquoi tu ne veut pas faire un form sans submit, personnellement j'ai jamais vue un form sans submit car c'est lui qui déclenche l'envoie du port
Pourquoi tu ne veut pas faire un form sans submit, personnellement j'ai jamais vue un form sans submit car c'est lui qui déclenche l'envoie du port
Salut !
Ton <a> dans ton formulaire te sers de submit, pourquoi ne pas mettre un input type submit alors ?
Ca revient un peu à la question de Spz91, pourquoi tu veux ne pas mettre de submit ?
Et je n'ai pas forcément compris ce que tu souhaites faire enfaite
Ton <a> dans ton formulaire te sers de submit, pourquoi ne pas mettre un input type submit alors ?
Ca revient un peu à la question de Spz91, pourquoi tu veux ne pas mettre de submit ?
Et je n'ai pas forcément compris ce que tu souhaites faire enfaite
Bonjour,
Parce que je ne veux pas qu'il y est la case submit qui apparaissent je veux que mon lien cliquable envoi ma donnée POST et j'ai essayé un FORM pour ça mais peut-être que ce n'est pas la bonne solution...
Parce que je ne veux pas qu'il y est la case submit qui apparaissent je veux que mon lien cliquable envoi ma donnée POST et j'ai essayé un FORM pour ça mais peut-être que ce n'est pas la bonne solution...
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
normal que tu n'en ait qu'un qui soit "submit"
tu fais une boucle pour afficher tes formulaires mais ils ont tous le même id="mail"
et lorsque tu fais onclick='document.getElementById("mail").submit() javascript ne s'y retrouve pas car un id doit être unique
une solution en différenciant les id avec un compteur $i
tu fais une boucle pour afficher tes formulaires mais ils ont tous le même id="mail"
et lorsque tu fais onclick='document.getElementById("mail").submit() javascript ne s'y retrouve pas car un id doit être unique
une solution en différenciant les id avec un compteur $i
<?php
}
// colone 1
$reponse = $bdd->query('SELECT * FROM membre
WHERE nom LIKE \'a%\' OR nom LIKE \'b%\'
ORDER BY nom ASC LIMIT 0,20');
$i=0; //compteur
while ($donnee = $reponse -> fetch())
{
?>
<form id="mail_<?php echo $i;?>" method="post" action="page2.php">
<ul id="col1" class="no_decoration">
<li>
<a class="hover" href="#" onclick='document.getElementById("mail<?php echo $i;?>").submit()'>
<?php echo $donnee['nom'].' '; ?><?php echo $donnee['prenom']; ?></a>
</li>
</ul>
<input type="hidden" name="mail" value="<?php echo $donnee['mail']; ?>" />
</form>
<?php
$i++;
}
{
?>