Probleme avec while et traitement pour sql depuis while [Résolu]

Signaler
Messages postés
172
Date d'inscription
samedi 11 août 2012
Statut
Membre
Dernière intervention
9 avril 2011
-
gfpl
Messages postés
172
Date d'inscription
samedi 11 août 2012
Statut
Membre
Dernière intervention
9 avril 2011
-
Voila je suis confronter a un problème j'ai retourner ca dans tout les sens mais je ne trouve pas de solution je doit louper un truc... mais quoi a force on finit par faire en sorte que rien ne marche ...

la première requête marche c'est le traitement du formulaire qui ne reçoit pas les infos ou alors elles sont malformater pour être traiter ?

j'ai une requête sql qui me sort un tableau

depuis ce tableau j'en crée un formulaire ce formulaire doit être inséré dans une base sql mais ... il me retourne que les champs sont vide ? comme si il ne les effaçait.

source de la première requête

///////////////////// GENERE LES FACTURES ////////////////////////////////////////
echo '<hr />Ajouter une facture';
echo "
Séléctionner les services a facture ainsi que les dates de debut et de fin de facture ";

///////// génération des service a facturer

connexion();
echo'<form action= "services_edit_client.php?id='.$_GET["id"].'" method="post"> Nom du service a facturer  |Date de debut |Prix |Mensualité |Date de fin |Ajouter |';
@$class  = $_GET['pos'];
if( strlen($_GET['pos']) > 0 AND !is_numeric($_GET['pos'])) exit;
if( !$class ) $class = 0;
$couleur=0;
$tabl = mysql_query(\"SELECT DISTINCT config_id FROM prefix_service_facture WHERE id_client='\".$_GET[\"id\"].\"' ORDER BY id ASC LIMIT $class,40\") or die ('Erreur, impossible d\'afficher les membres');
$nb_incremente=0;
while ($donnees_tabl = mysql_fetch_array($tabl))
{
$rang_id = $donnees_tabl[\"id\"];
$config_id_sql  = $donnees_tabl[\"config_id\"];
//$service_fr = $donnees_tabl[\"service_nom_fr\"];
//$service_nl =$donnees_tabl['service_nom_nl'];
//$service_en = $donnees_tabl['service_nom_en'];
$service_prix = $donnees_tabl['prix'];
//$service_mensual = $donnees_tabl['mois'];
//$service_upgrade = $donnees_tabl['upgrade'];

//------------------------------------ Affichage de la ligne
echo'<tr class=\"';
$couleur++;
if($couleur == 1)	echo'style1';
elseif($couleur == 2)	{	echo'style2'; $couleur=0;	}
echo'\">
'._select_service_as($config_id_sql). ', ';
echo"<select name=day_s>";
getoption(1, 31, date("d"));
echo "</select><select name=month_s>";
getoption(1, 12, date("m"));
echo "</select><select name=year_s>";
getoption(2010, 2020, date("Y"));
echo "</select>";

echo',  €, '.$service_mensual.' /mois, ';
echo"<select name=day_f>";
getoption(1, 31, date("d"));
echo "</select><select name=month_f>";
getoption(1, 12, date("m"));
echo "</select><select name=year_f>";
getoption(2010, 2020, date("Y"));
echo "</select>";
echo', , ';
$nb_incremente++;
}

echo'

</form>

';


//// fin de la generation de la facture




Traitement du formulaire

///////////////////////SI ON AJOUTE UNE FACTURE ///////////////////////////

$service_add1kn= $_POST['service_add1'];

for($i=0;$i<$nb_incremente;$i++){
if(isset($_POST["nb_incremente$i"]))
//$_POST = form_secu($_POST, 'addslashes');
//$_POST = form_secu($_POST, 'trim');

{
$error_msg="";
$day1 = stripslashes($_POST['day_s']);
$month1 = stripslashes($_POST['month_s']);
$year1 = stripslashes($_POST['year_s']);
$day1_f = stripslashes($_POST['day_f']);
$month1_f = stripslashes($_POST['month_f']);
$year1_f = stripslashes($_POST['year_f']);
$prix_f= stripslashes($_POST['prix_f']);

//$nb_incremente=$_POST['nb_incremente'];


$better_token1= stripslashes($_POST['better_token']);
if(empty($service_add1kn)){
echo '
Le service ne peut être vide.'.$service_add1kn;$error_msg .='1';
}

if(empty($day1)){
echo '
Le jour de debut ne peut être vide.';$error_msg .='1';
}

if(empty($month1)){
echo '
Le mois de debut ne peut être vide.';$error_msg .='1';
}

if(empty($year1)){
echo '
Annee de debut  ne peut être vide.';$error_msg .='1';
}

if(empty($prix_f)){
echo '
prix ne peut être vide.';$error_msg .='1';
}

if(empty($better_token1)){
echo '
Clef_md5 ne peut être vide.';$error_msg .='1';
}
if(empty($error_msg))
{
///
/*insertion dans la table facture
et dans la teble des services clients. */
connexion();

//création de la facture 
mysql_query("INSERT INTO prefix_service_facture VALUES ('', '".$_GET["id"]."', '".$rang_id."', '".$better_token1."', '".$day1."', '".$month1."', '".$year1."','".$day1_f."', '".$month1_f."', '".$year1_f."','".$prix_f."','0','0','0','0','0' ) ") or die (mysql_error());mysql_close();
unset($_POST['service_add'],$_POST['year'],$rang_id,$better_token);


}
}




il me retourne toujours 4* ( forcement 4 enregistrement dans la base pour ce client ) ce message :

Le service ne peut être vide.
Le service ne peut être vide.
Le service ne peut être vide.
Le service ne peut être vide.

5 réponses

Messages postés
1654
Date d'inscription
dimanche 7 septembre 2008
Statut
Membre
Dernière intervention
11 septembre 2013
10
Bonjour

1/ $_GET["id"] est il bien définit ?
avant connexion();
if(isset($_GET["id"]) && !empty($_GET["id"])) {
echo 'ok definit';
} else {
echo 'non definit';
}

2/ dans la reception juste aprés le tag d'ouverture <?php
//verification du tableau $_POST
echo '';
print_r[$_POST];
echo '

';

a++
Messages postés
1654
Date d'inscription
dimanche 7 septembre 2008
Statut
Membre
Dernière intervention
11 septembre 2013
10
echo'<form action="services_edit_client.php?id='.$_GET["id"].'" method="post">

?id='.$_GET["id"] je comprend pas ça sur une method post plutôt

<form action="services_edit_client.php" method="post">
echo '';

a++
Messages postés
172
Date d'inscription
samedi 11 août 2012
Statut
Membre
Dernière intervention
9 avril 2011

merci pour ta reponse

(
[service_add1] =>
[day_s] => 26
[month_s] => 11
[year_s] => 2010
[prix_f] => 37.99
[nb_etudiant] => 3
[day_f] => 26
[month_f] => 11
[year_f] => 2010
[better_token] => 89d51ebcb4f118d6d6c1ab4c2bb58990
[_add_facture] => Ajouter
)
sauf que c'est
echo '';
print_r ($_POST);
echo '

';

le get id est bon et il passe bien mais je ne récupère pas la première variable

je suis trop c*** décidément

2* la même valeur dans un post forcement les conditions s'anullent &
Messages postés
1654
Date d'inscription
dimanche 7 septembre 2008
Statut
Membre
Dernière intervention
11 septembre 2013
10
ça arrive même au meilleur
a++
Messages postés
172
Date d'inscription
samedi 11 août 2012
Statut
Membre
Dernière intervention
9 avril 2011

id='.$_GET["id"] récupérer dans l'URL l'id et le renvoi dans le formulaire enfin je le fais maintenant ( j'y ai pas penser ;)

merci bien monsieur ;)