Problème très IMPORTANT help please [PHP]

Altah -  
Mihawk Messages postés 4753 Statut Contributeur -
Bonjour je crois que j'ai oublié une ligne ou je ne sais quoi mais je n'arrive pas à envoyer les infos de ce formulaire dans ma base de donnée, voilà le code ci dessous si j'ai oublié quelque chose pouvez vous me dire où car c'est mon projet de stage et si je bloque je ne pourrait pas finir :s


<?php





echo"<form action='Fermeture.php' method='Post' />";
echo"<fieldset>
<legend>Insérer une période de fermeture :</legend>

<label>Date Début : </label><input type='text' name='Date Début'/><br/><br/>
<label>Date Fin : </label><input type='text' name='Date Fin' /><br/><br/>
<label>Libellé : </label><input type='text' name='Libellé' />
<center><input type='submit' value='Valider' /></center>
</fieldset>";
$aujourdhui = getdate();
$maintenant=$aujourdhui[0];

$connex = mysql_connect ('localhost', 'root','');
$ok = mysql_select_db ('convives', $connex);
$sqlfermeture="select * from fermeture where TimestampDebut >= '$maintenant' order by TimestampDebut";
$requ=mysql_query($sqlfermeture,$connex);


while($tabrepas=mysql_fetch_array($requ))
{
echo"<form method='POST' />";

$id=$tabrepas [0];
$timestampdebut= getdate ($tabrepas [1]);
$jour=$timestamp['mday'];
$mois=$timestamp['mon'];
$annee=$timestamp['year'];
$heure=$timestamp['hours'];
$minute=$timestamp['minutes'];



echo"<fieldset>
<legend>Supprimer ou Modifier les périodes de fermeture :</legend>
<input type='text' placeholder='DateDebut' name='DateDebut' />
<input type='text' placeholder='DateFin' name='DateFin' />
<input type='hidden' value='$id' name='id'>
<input type='submit' value='Modifier'/>
<input type='submit' value='Supprimer'/>

</fieldset>
</form>";

}















mysql_close($connex) ;


?>


Cordialement.
A voir également:

3 réponses

Mihawk Messages postés 4753 Statut Contributeur 846
 
Hello,

Tu ne nous fournis ici que le code du formulaire.
Où est le code d'insertion en base ?
0
Altah
 
Tout est sur la même page il y a le formulaire et je voudrais que cela envoie les infos à la base de donnée . en cliquant sur le bouton envoyer.
0
Mihawk Messages postés 4753 Statut Contributeur 846
 
Alors il manque la partie la plus importante, non ? Le code PHP vérifiant l'existence de données $_POST et, si oui, les récupérant et les envoyant en base...
0
Altah
 
Bah là je bloque vraiment car c'est un début pour moi je ne suis que débutant dans ce domaine est ce que tu peux me dire où placer ce qu'il va permettre de corriger sa ? :s
0
Mihawk Messages postés 4753 Statut Contributeur 846
 
Il faut que tu teste l'existence de données post :

<?php
if (isset($_POST['nomdundeteschamps'])){
// Un formulaire a été validé
}
?>

Ensuite dedans tu récupères des différentes valeurs, par exemple :

$pseudo = $_POST['pseudo'];
$ville = $_POST['ville']


(ce qu'il y a entre crochets correspond aux attributs "name" de tes différentes input dans ton formulaire.

Enfin il te suffit de faire une simple requête SQL d'insert pour envoyer tout cela en base... Plus d'infos sur le site du zéro :
https://openclassrooms.com/fr/courses/918836-concevez-votre-site-web-avec-php-et-mysql/913099-transmettez-des-donnees-avec-les-formulaires
0
Altah
 
Le site du zéro pour cela ne donne rien ou alors des trucs où j'ai pas besoin pour sa, je suis vraiment perdu là j'y comprend rien du tout.
0
Mihawk Messages postés 4753 Statut Contributeur 846
 
Ta balise <post> contient un attribut "action" qui contient le nom de ta page de traitement du formulaire.

Par exemple :

<post action="Fermeture.php" method="post">
    <input name="pseudo" type="text"/>
    <input type="submit" value="Envoyer">
</post>

Ce formulaire, une fois que tu cliqueras sur 'Envoyer', te redirigera sur la page Fermeture.php ; sur cette page, tu auras accès à une données superglobales qui s'appelle $_POST['pseudo'] et qui contient ce que l'utilisateur a entré dans le champ "Pseudo" du formulaire. Libre à toi de récupérer cette donnée et d'en faire ce que tu veux ; par exemple en utilisant

$sqlReq = "insert into matabledepseudo(pseudo) values ".$_POST['pseudo'].";"


Tu vois ?
Attention par contre : chaque bloc <form></form> contient un seul formulaire ; et chaque formulaire ne peut avoir qu'une seule input de type "submit" qui renvoie alors vers la page spécifiée dans "action".

Tu me suis?
0