Besoin d'aide en php
Fermé
bibi
-
26 avril 2005 à 14:33
fras34 Messages postés 92 Date d'inscription mardi 19 avril 2005 Statut Membre Dernière intervention 27 mai 2007 - 26 avril 2005 à 16:56
fras34 Messages postés 92 Date d'inscription mardi 19 avril 2005 Statut Membre Dernière intervention 27 mai 2007 - 26 avril 2005 à 16:56
15 réponses
Luffy =)
Messages postés
365
Date d'inscription
mercredi 20 avril 2005
Statut
Membre
Dernière intervention
19 mai 2006
110
26 avril 2005 à 14:40
26 avril 2005 à 14:40
tu px poster le code où il y a ta requête ?
voici le code qui genere ma requete
if ($action == 'ajouter' || ($action == 'visualiser' && $num_enr == '')){
if ($status == "ok"){
$requete = "INSERT INTO $objet set";
foreach($champs as $cle => $valeur ){
if(($cle==Nom_Primer && $objet==resultats_analyses)||($cle==Nom_Sequence && $objet==alignements)||($cle==Nom_Tissu && $objet==resultats_analyses)){
$prim = isset($_POST['prim']) ? $_POST['prim'] : '';
foreach($prim as $val)
{
$valeur.=" $val /";
} $VLAS .=", $cle='$valeur ' ";
}
else{
$VLAS .=", $cle ='$valeur' ";
}
}
$VLAS=substr( $VLAS, 1);
$requete .=$VLAS;
echo $requete;
(ce code marche pour tout le formulaire donc je ne pense pas que ce soit la qu'uil y est une erreur)
if ($action == 'ajouter' || ($action == 'visualiser' && $num_enr == '')){
if ($status == "ok"){
$requete = "INSERT INTO $objet set";
foreach($champs as $cle => $valeur ){
if(($cle==Nom_Primer && $objet==resultats_analyses)||($cle==Nom_Sequence && $objet==alignements)||($cle==Nom_Tissu && $objet==resultats_analyses)){
$prim = isset($_POST['prim']) ? $_POST['prim'] : '';
foreach($prim as $val)
{
$valeur.=" $val /";
} $VLAS .=", $cle='$valeur ' ";
}
else{
$VLAS .=", $cle ='$valeur' ";
}
}
$VLAS=substr( $VLAS, 1);
$requete .=$VLAS;
echo $requete;
(ce code marche pour tout le formulaire donc je ne pense pas que ce soit la qu'uil y est une erreur)
Luffy =)
Messages postés
365
Date d'inscription
mercredi 20 avril 2005
Statut
Membre
Dernière intervention
19 mai 2006
110
26 avril 2005 à 14:45
26 avril 2005 à 14:45
en effet ça a l'air d'être ok pour la requête. par contre il y a qq chose que je ne comprends pas ds ta page, car tu mets des select pour sélectionner la date, et la date tu la récupères avec la méthode $_POST. tu prends la quelle alors ???
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Luffy =)
Messages postés
365
Date d'inscription
mercredi 20 avril 2005
Statut
Membre
Dernière intervention
19 mai 2006
110
26 avril 2005 à 15:06
26 avril 2005 à 15:06
ah d'accord, en fait c'est que tu appelles la même page lors de la validation du formulaire, c'est bien ça ?
d'ailleurs je ne vois pas la construction de ton formulaire dans ton code
comme :
comme ça tu récup tes variables dans la page opopop.php avec $mois = $_POST['mois']; et si tes variables ne sont pas définies, tu rediriges sur la page d'avant, si elles sont définies tu exécutes ta requête.
d'ailleurs je ne vois pas la construction de ton formulaire dans ton code
comme :
<form action="opopop.php" method=POST> ...</form>
comme ça tu récup tes variables dans la page opopop.php avec $mois = $_POST['mois']; et si tes variables ne sont pas définies, tu rediriges sur la page d'avant, si elles sont définies tu exécutes ta requête.
Ben en fait c'est pour un site internet donc tout est fractionné, la construction du formulaire ce fait dans un autre fichier.
J'ai mon formulaire bidule qui contient la creation des liste déroulante,etc...
et j'ai un autre fichier fonction qui permet l'envoie de ces données dans la base.
Mon probleme est que je veux récuperer les 3 valeurs (jour pmois année) dans un seul champs de ma table bidule qui se nomme nom_date.
J'ai mon formulaire bidule qui contient la creation des liste déroulante,etc...
et j'ai un autre fichier fonction qui permet l'envoie de ces données dans la base.
Mon probleme est que je veux récuperer les 3 valeurs (jour pmois année) dans un seul champs de ma table bidule qui se nomme nom_date.
Luffy =)
Messages postés
365
Date d'inscription
mercredi 20 avril 2005
Statut
Membre
Dernière intervention
19 mai 2006
110
26 avril 2005 à 15:17
26 avril 2005 à 15:17
euh, je ne crois pas qu'en SQL tu ai le droit de mettre dans un champs date (d'ailleurs le type de ton champ est date ou varchar ?) une date avec "janvier" dedans. ce doit être du style '21/04/2005'
donc soit tu fais une correspondance dans une fonction pour janvier->01 ou bien tu mets directement dans ton select "01", "02",... au lieu de janvier févirer,...
donc soit tu fais une correspondance dans une fonction pour janvier->01 ou bien tu mets directement dans ton select "01", "02",... au lieu de janvier févirer,...
ben je pense pas que ca influe parcke mon NOm_Date est de type varchar donc...
Mais surotut comment faire pour recuperer les trois valeurs dans mon champs Nom_Date
Mais surotut comment faire pour recuperer les trois valeurs dans mon champs Nom_Date
Luffy =)
Messages postés
365
Date d'inscription
mercredi 20 avril 2005
Statut
Membre
Dernière intervention
19 mai 2006
110
26 avril 2005 à 15:39
26 avril 2005 à 15:39
ben il faut que tu mettes
dans la page "opopop.php" dans l'exemple que je t'ai mis. mais il faut que tu crées ton formulaire dans la page où il y a les <select>
et pour les noms, evites de mettre des accents (comme pour "année" mets plutot "annee" même si c'est moins joli ;-)
if(isset($_POST['valider'])){ $nom_date=$_POST['jour']."/".$_POST['mois']."/".$_POST['année'];
dans la page "opopop.php" dans l'exemple que je t'ai mis. mais il faut que tu crées ton formulaire dans la page où il y a les <select>
et pour les noms, evites de mettre des accents (comme pour "année" mets plutot "annee" même si c'est moins joli ;-)
Je viens de faire les modifications et j'ai toujurs rien dans ma table.
Si t'as une autre idée...sinon merci kan meme
Si t'as une autre idée...sinon merci kan meme
Luffy =)
Messages postés
365
Date d'inscription
mercredi 20 avril 2005
Statut
Membre
Dernière intervention
19 mai 2006
110
26 avril 2005 à 15:51
26 avril 2005 à 15:51
est-ce que tu as bien rajouter les trucs soulignés dans ton code :
et il faut que tu mettes :
dans la page opopop.php
if ($action == 'visualiser'){ echo "$ligne[6]"; } else { echo "<form action=\"opopop.php\" method=POST>"; echo '<select name="jour" value="'.$i.'">'; for($i=1;$i<=31;$i++){ echo '<option >'.$i.'</option>'; } echo'</select>'; echo'<select name="mois" value="'.$ligne[7].'"><option>Janvier</option><option>Fevrier</option><option>Mars</option><option>Avril</option><option>Mai</option><option>Juin</option><option>Juillet</option><option>Aout</option><option>Septembre</option><option>Octobre</option><option>Novembre</option><option>Decembre</option></select>'; echo'<INPUT type="text" Name="année" value="'.$ligne[6].'"></INPUT>'; echo "</form>"; }
et il faut que tu mettes :
if(isset($_POST['valider'])){ $nom_date=$_POST['jour']."/".$_POST['mois']."/".$_POST['année'];
dans la page opopop.php
J'ai fait des echo et mon $date récupère bien les valeurs que je veux.
Ensuite dans ma fonction pour inserer les valeurs le $cle correspond bien a $Nom_Date mais il n'y a rien dans mon $valeur.
Ensuite dans ma fonction pour inserer les valeurs le $cle correspond bien a $Nom_Date mais il n'y a rien dans mon $valeur.
Luffy =)
Messages postés
365
Date d'inscription
mercredi 20 avril 2005
Statut
Membre
Dernière intervention
19 mai 2006
110
26 avril 2005 à 16:36
26 avril 2005 à 16:36
ta fonction pour insérer les valeurs est dans la même page où tu as afficher le $date ou dans une autre ?
fras34
Messages postés
92
Date d'inscription
mardi 19 avril 2005
Statut
Membre
Dernière intervention
27 mai 2007
36
26 avril 2005 à 16:56
26 avril 2005 à 16:56
Bonjour,
le mieux pour recuperer plusieurs variables de formualaire dans un champ SQL :
tu recupère comme suit :
NB: Je te deconseil de stoker des dates dans un BD autement qu'au format date ou datetime. Aucune utilité. pas de comparaison, classement, calculs possible
Je te conseil plutot de fromater ta date lors de la requete select avec
DATE_FORMAT(date,format) , ou en php avec strftime()
Voir le manuel php : http://fr.php.net/manual/fr/function.strftime.php
La doc Mysql : http://dev.mysql.com/doc/mysql/fr/date-and-time-functions.html
le mieux pour recuperer plusieurs variables de formualaire dans un champ SQL :
<select name="date[jour]"> ... </select> <select name="date[mois]"> ... </select> <select name="date[anne]"> ... </select>
tu recupère comme suit :
$mavar=implode('/',$_POST[date]);
NB: Je te deconseil de stoker des dates dans un BD autement qu'au format date ou datetime. Aucune utilité. pas de comparaison, classement, calculs possible
Je te conseil plutot de fromater ta date lors de la requete select avec
DATE_FORMAT(date,format) , ou en php avec strftime()
Voir le manuel php : http://fr.php.net/manual/fr/function.strftime.php
La doc Mysql : http://dev.mysql.com/doc/mysql/fr/date-and-time-functions.html