Précédent   Forum des professionnels en informatique > PHP > PHP & SGBD
PHP & SGBD Forum d'entraide sur les SGBD avec PHP. Avant de poster : FAQ BDD, toutes les FAQ PHP, cours BDD et sources BDD
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 18/07/2006, 22h59   #1
Membre du Club
 
Inscription : juin 2006
Messages : 215
Détails du profil
Informations forums :
Inscription : juin 2006
Messages : 215
Points : 50
Points : 50
Par défaut [Conception] Problème avec INSERT dans une TABLE

Bonjour,
J'ai un formulaire sur mon site qui fonctionne correctement, je viens d'installer Wamp pour des modifs et j'ai comme problème quand je valide le formulaire il insère des ligne vide dans ma TABLE et j'ai beaucoup de mal à comprend pourquoi en local il ne fonctionne pas et sur mon site il fonctionne il y aurais (encore une fois !) une bonne âme pour me guider ???
Voici mon fichier validation.php
Citation:
<?PHP
session_start();
if (!isset($_SESSION['login'])) {
header ('Location: ../index.php');
exit();
}

include "../connect/fc-phpconnect.php";

// 1 ligne du form//


if ($ref_1 != '' && $nom_1 != '' && $adr_1 != '' && $rem_1 != '' && $tech_1 != '' && $date_1 != '' && $tel_1) {
}
$base = "INSERT INTO prestation_juillet_2006 (ref, nom, adr, rem, tech, date, tel) VALUES ('".mysql_escape_string($ref_1)."', '".mysql_escape_string($nom_1)."', '".mysql_escape_string($adr_1)."', '".mysql_escape_string($rem_1)."', '".mysql_escape_string($tech_1)."', '".mysql_escape_string($date_1)."', '".mysql_escape_string($tel_1)."')";
mysql_query($base)or die('Erreur SQL !'.$base.''.mysql_error());

//ligne 2 du form//

if ($ref_2 != '' && $nom_2 != '' && $adr_2 != '' && $rem_2 != '' && $tech_2 != '' && $date_2 != '' && $tel_2)
{
$base = "INSERT INTO prestation_juillet_2006 (ref, nom, adr, rem, tech, date, tel) VALUES ('".mysql_escape_string($ref_2)."', '".mysql_escape_string($nom_2)."', '".mysql_escape_string($adr_2)."', '".mysql_escape_string($rem_2)."', '".mysql_escape_string($tech_2)."', '".mysql_escape_string($date_2)."', '".mysql_escape_string($tel_2)."')";
mysql_query($base)or die('Erreur SQL !'.$base.''.mysql_error());
}


//ligne 3 du form//

if ($ref_3 != '' && $nom_3 != '' && $adr_3 != '' && $rem_3 != '' && $tech_3 != '' && $date_3 != '' && $tel_3)
{
$base = "INSERT INTO prestation_juillet_2006 (ref, nom, adr, rem, tech, date, tel) VALUES ('".mysql_escape_string($ref_3)."', '".mysql_escape_string($nom_3)."', '".mysql_escape_string($adr_3)."', '".mysql_escape_string($rem_3)."', '".mysql_escape_string($tech_3)."', '".mysql_escape_string($date_3)."', '".mysql_escape_string($tel_3)."')";
mysql_query($base)or die('Erreur SQL !'.$base.''.mysql_error());
}

//ligne 4 du form//

if ($ref_4 != '' && $nom_4 != '' && $adr_4 != '' && $rem_4 != '' && $tech_4 != '' && $date_4 != '' && $tel_4)
{
$base = "INSERT INTO prestation_juillet_2006 (ref, nom, adr, rem, tech, date, tel) VALUES ('".mysql_escape_string($ref_4)."', '".mysql_escape_string($nom_4)."', '".mysql_escape_string($adr_4)."', '".mysql_escape_string($rem_4)."', '".mysql_escape_string($tech_4)."', '".mysql_escape_string($date_4)."', '".mysql_escape_string($tel_4)."')";
mysql_query($base)or die('Erreur SQL !'.$base.''.mysql_error());
}


//ligne 5 du form//

if ($ref_5 != '' && $nom_5 != '' && $adr_5 != '' && $rem_5 != '' && $tech_5 != '' && $date_5 != '' && $tel_5)
{
$base = "INSERT INTO prestation_juillet_2006 (ref, nom, adr, rem, tech, date, tel) VALUES ('".mysql_escape_string($ref_5)."', '".mysql_escape_string($nom_5)."', '".mysql_escape_string($adr_5)."', '".mysql_escape_string($rem_5)."', '".mysql_escape_string($tech_5)."', '".mysql_escape_string($date_5)."', '".mysql_escape_string($tel_5)."')";
mysql_query($base)or die('Erreur SQL !'.$base.''.mysql_error());
}


//ligne 6 du form//

if ($ref_6 != '' && $nom_6 != '' && $adr_6 != '' && $rem_6 != '' && $tech_6 != '' && $date_6 != '' && $tel_6)
{
$base = "INSERT INTO prestation_juillet_2006 (ref, nom, adr, rem, tech, date, tel) VALUES ('".mysql_escape_string($ref_6)."', '".mysql_escape_string($nom_6)."', '".mysql_escape_string($adr_6)."', '".mysql_escape_string($rem_6)."', '".mysql_escape_string($tech_6)."', '".mysql_escape_string($date_6)."', '".mysql_escape_string($tel_6)."')";
mysql_query($base)or die('Erreur SQL !'.$base.''.mysql_error());
}
mysql_close($link);

echo 'merci beaucoup, vos infos ont été enregistrées.';

?>
<html>
<head></head>
<body>
<body background="../img/grd-4px.gif">

<a href="../deconnexion.php"><font color="#FF0000">Déconnexion</font></a>

</body>
</html>
D'avance merci
dunbar est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 18/07/2006, 23h41   #2
Membre expérimenté
 
Inscription : mai 2002
Messages : 673
Détails du profil
Informations forums :
Inscription : mai 2002
Messages : 673
Points : 532
Points : 532
Code :
1
2
3
4
5
6
7


if ($ref_1 != '' && $nom_1 != '' && $adr_1 != '' && $rem_1 != '' && $tech_1 != '' && $date_1 != '' && $tel_1) {
}
$base = "INSERT INTO prestation_juillet_2006 (ref, nom, adr, rem, tech, date, tel) VALUES etc...
mysql_query($base)or die('Erreur SQL !'.$base.''.mysql_error());
ton acolade ferme le if, et ta requete viens après... donc elle sera executer a chaque fois que le script sera exécuter... ça explique peut être tes enregistrements vides !
gloubi est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 18/07/2006, 23h52   #3
Membre du Club
 
Inscription : juin 2006
Messages : 215
Détails du profil
Informations forums :
Inscription : juin 2006
Messages : 215
Points : 50
Points : 50
Citation:
Envoyé par gloubi
Code :
1
2
3
4
5
6
7


if ($ref_1 != '' && $nom_1 != '' && $adr_1 != '' && $rem_1 != '' && $tech_1 != '' && $date_1 != '' && $tel_1) {
}
$base = "INSERT INTO prestation_juillet_2006 (ref, nom, adr, rem, tech, date, tel) VALUES etc...
mysql_query($base)or die('Erreur SQL !'.$base.''.mysql_error());
ton acolade ferme le if, et ta requete viens après... donc elle sera executer a chaque fois que le script sera exécuter... ça explique peut être tes enregistrements vides !
Salut
Merci pour cette réponse mais même si je suprime if cela ne change rien, mais se que je ne comprend pas c'est que cela fonctionne sur mon WebSite et pas en Local
dunbar est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 19/07/2006, 00h04   #4
Membre expérimenté
 
Inscription : mai 2002
Messages : 673
Détails du profil
Informations forums :
Inscription : mai 2002
Messages : 673
Points : 532
Points : 532
faut pas supprimer le if, mais mettre l'acolade fermante } a la fin du bloc d'instruction...


Code :
1
2
3
4
5
6
7


if ($ref_1 != '' && $nom_1 != '' && $adr_1 != '' && $rem_1 != '' && $tech_1 != '' && $date_1 != '' && $tel_1) {
$base = "INSERT INTO prestation_juillet_2006 (ref, nom, adr, rem, tech, date, tel) VALUES ('".mysql_escape_string($ref_1)."', '".mysql_escape_string($nom_1)."', '".mysql_escape_string($adr_1)."', '".mysql_escape_string($rem_1)."', '".mysql_escape_string($tech_1)."', '".mysql_escape_string($date_1)."', '".mysql_escape_string($tel_1)."')";
mysql_query($base)or die('Erreur SQL !'.$base.''.mysql_error());
}
ensuite, en explication a pourquoi ca fonctionne dans un cas et pas dans l'autre, il suffit que sur l'un ta base accepete des parametres null et pas sur l'autre...

Disons qu'avant de rentrer dans le détail, il faut que tu règle ton problème de IF, et pas en le supprimant, car dans l'état actuel des choses, le supprimer revient EXACTEMENT au même que de ne pas toucher à ton code original.
gloubi est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 19/07/2006, 00h11   #5
Membre du Club
 
Inscription : juin 2006
Messages : 215
Détails du profil
Informations forums :
Inscription : juin 2006
Messages : 215
Points : 50
Points : 50
Citation:
Envoyé par gloubi
faut pas supprimer le if, mais mettre l'acolade fermante } a la fin du bloc d'instruction...


Code :
1
2
3
4
5
6
7


if ($ref_1 != '' && $nom_1 != '' && $adr_1 != '' && $rem_1 != '' && $tech_1 != '' && $date_1 != '' && $tel_1) {
$base = "INSERT INTO prestation_juillet_2006 (ref, nom, adr, rem, tech, date, tel) VALUES ('".mysql_escape_string($ref_1)."', '".mysql_escape_string($nom_1)."', '".mysql_escape_string($adr_1)."', '".mysql_escape_string($rem_1)."', '".mysql_escape_string($tech_1)."', '".mysql_escape_string($date_1)."', '".mysql_escape_string($tel_1)."')";
mysql_query($base)or die('Erreur SQL !'.$base.''.mysql_error());
}
ensuite, en explication a pourquoi ca fonctionne dans un cas et pas dans l'autre, il suffit que sur l'un ta base accepete des parametres null et pas sur l'autre...

Disons qu'avant de rentrer dans le détail, il faut que tu règle ton problème de IF, et pas en le supprimant, car dans l'état actuel des choses, le supprimer revient EXACTEMENT au même que de ne pas toucher à ton code original.
Salut et merci pour vos réponses,
Alors voici mon code modifier et cela ne change rien ....

Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
 <?PHP
session_start();
if (!isset($_SESSION['login'])) {
    header ('Location: ../index.php');
    exit();
}
?>
<?PHP
 
include "../connect/fc-phpconnect.php";
 
//  ligne 1 du form//
 
 
if ($IDClient != '' && $ref_1 != '' && $nom_1 != '' && $adr_1 != '' && $rem_1 != '' && $tech_1 != '' && $date_1 != '' && $tel_1) {
$sql = "INSERT INTO prestation_juillet_2006 (IDClient,ref, nom, adr, rem, tech, date, tel) VALUES ('".mysql_escape_string($IDClient)."','".mysql_escape_string($ref_1)."','".mysql_escape_string($nom_1)."','".mysql_escape_string($adr_1)."','".mysql_escape_string($rem_1)."','".mysql_escape_string($tech_1)."','".mysql_escape_string($date_1)."','".mysql_escape_string($tel_1)."')";
mysql_query($sql)or die('Erreur SQL !'.$sql.''.mysql_error());
}
// ligne 2 fu form//
 
if ($ref_2 != '' && $nom_2 != '' && $adr_2 != '' && $rem_2 != '' && $tech_2 != '' && $date_2 != '' && $tel_2){
$sql = "INSERT INTO prestation_juillet_2006 (IDClient,ref, nom, adr, rem, tech, date, tel) VALUES ('".mysql_escape_string($IDClient)."','".mysql_escape_string($ref_2)."','".mysql_escape_string($nom_2)."','".mysql_escape_string($adr_2)."','".mysql_escape_string($rem_2)."','".mysql_escape_string($tech_2)."','".mysql_escape_string($date_2)."','".mysql_escape_string($tel_2)."')";
mysql_query($sql)or die('Erreur SQL !'.$sql.''.mysql_error());
}
 
 
// ligne 3 du form//
 
if ($ref_3 != '' && $nom_3 != '' && $adr_3 != '' && $rem_3 != '' && $tech_3 != '' && $date_3 != '' && $tel_3){
$sql = "INSERT INTO prestation_juillet_2006 (ref, nom, adr, rem, tech, date, tel) VALUES ('".mysql_escape_string($IDClient)."','".mysql_escape_string($ref_3)."','".mysql_escape_string($nom_3)."','".mysql_escape_string($adr_3)."','".mysql_escape_string($rem_3)."','".mysql_escape_string($tech_3)."','".mysql_escape_string($date_3)."','".mysql_escape_string($tel_3)."')";
mysql_query($sql)or die('Erreur SQL !'.$sql.''.mysql_error());
}
 
// ligne 4 du form//
 
if ($ref_4 != '' && $nom_4 != '' && $adr_4 != '' && $rem_4 != '' && $tech_4 != '' && $date_4 != '' && $tel_4){
$sql = "INSERT INTO prestation_juillet_2006 (ref, nom, adr, rem, tech, date, tel) VALUES ('".mysql_escape_string($IDClient)."','".mysql_escape_string($IDClient)."','".mysql_escape_string($ref_4)."','".mysql_escape_string($nom_4)."','".mysql_escape_string($adr_4)."','".mysql_escape_string($rem_4)."','".mysql_escape_string($tech_4)."','".mysql_escape_string($date_4)."','".mysql_escape_string($tel_4)."')";
mysql_query($sql)or die('Erreur SQL !'.$sql.''.mysql_error());
}
 
 
// ligne 5 du form//
 
if ($ref_5 != '' && $nom_5 != '' && $adr_5 != '' && $rem_5 != '' && $tech_5 != '' && $date_5 != '' && $tel_5){
$sql = "INSERT INTO prestation_juillet_2006 (ref, nom, adr, rem, tech, date, tel) VALUES ('".mysql_escape_string($IDClient)."','".mysql_escape_string($ref_5)."','".mysql_escape_string($nom_5)."','".mysql_escape_string($adr_5)."','".mysql_escape_string($rem_5)."','".mysql_escape_string($tech_5)."','".mysql_escape_string($date_5)."','".mysql_escape_string($tel_5)."')";
mysql_query($sql)or die('Erreur SQL !'.$sql.''.mysql_error());
}
 
 
//ligne 6 du form//
 
if ($ref_6 != '' && $nom_6 != '' && $adr_6 != '' && $rem_6 != '' && $tech_6 != '' && $date_6 != '' && $tel_6) {
$sql = "INSERT INTO prestation_juillet_2006 (ref, nom, adr, rem, tech, date, tel) VALUES ('".mysql_escape_string($IDClient)."','".mysql_escape_string($ref_6)."','".mysql_escape_string($nom_6)."','".mysql_escape_string($adr_6)."','".mysql_escape_string($rem_6)."','".mysql_escape_string($tech_6)."','".mysql_escape_string($date_6)."','".mysql_escape_string($tel_6)."')";
mysql_query($sql)or die('Erreur SQL !'.$sql.''.mysql_error());
}
mysql_close($link);
 
echo 'merci beaucoup, vos infos ont été enregistrées.';
 
?>
<html>
<head></head>
<body>
<body background="../img/grd-4px.gif">
 
<a href="../deconnexion.php"><font color="#FF0000">Déconnexion</font></a>
 
</body>
</html>
Merci d'avance
dunbar est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 19/07/2006, 00h14   #6
Membre expérimenté
 
Inscription : mai 2002
Messages : 673
Détails du profil
Informations forums :
Inscription : mai 2002
Messages : 673
Points : 532
Points : 532
comment s'appel ton fichier ?

edit : validation.php

pardon, j'avais pas vu... du coup, essaye ça

Code :
1
2
3
4
5
6
7
8
9
10
11
 
 
<?PHP
session_start();
if (!isset($_SESSION['login'])) {
//header ('Location: ../index.php');
echo "paf";
exit();
} 
 
ect....
et dis nous si ca change kkchose
gloubi est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 19/07/2006, 00h21   #7
Membre du Club
 
Inscription : juin 2006
Messages : 215
Détails du profil
Informations forums :
Inscription : juin 2006
Messages : 215
Points : 50
Points : 50
Citation:
Envoyé par gloubi
comment s'appel ton fichier ?

edit : validation.php

pardon, j'avais pas vu... du coup, essaye ça

Code :
1
2
3
4
5
6
7
8
9
10
11
 
 
<?PHP
session_start();
if (!isset($_SESSION['login'])) {
//header ('Location: ../index.php');
echo "paf";
exit();
} 
 
ect....
et dis nous si ca change kkchose
Non rien sorry et j'avais déjà vérifier que j'étais bien logué, de plus si cela n'avait pas été le cas je n'aurais pas d'enregistrement vide
Merci
dunbar est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 19/07/2006, 00h23   #8
Membre expérimenté
 
Inscription : mai 2002
Messages : 673
Détails du profil
Informations forums :
Inscription : mai 2002
Messages : 673
Points : 532
Points : 532
tu veux dire qu'en faisant cette modif, tu as toujours une page blanche avec rien écrit dessus ? même pas "paf" ?
gloubi est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 19/07/2006, 00h26   #9
Membre du Club
 
Inscription : juin 2006
Messages : 215
Détails du profil
Informations forums :
Inscription : juin 2006
Messages : 215
Points : 50
Points : 50
Citation:
Envoyé par gloubi
tu veux dire qu'en faisant cette modif, tu as toujours une page blanche avec rien écrit dessus ? même pas "paf" ?
Non j'ai ma page avec "merci les infos sont enregistrées" mais dans ma TABLE j'ai des lignes vide, et mon tableau nouvelle ligne MAIS vide......
Je comprend rien dutout
Le paf ne serais venu que si je n'étais pas logué mais la session login fonctionne.

Je répéte mon problème, a la fin de la validation du form j'ai le messsage Merci vos .... etc, mais dans ma table une nouvelle ligne se crée mais elle est vide..
dunbar est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 19/07/2006, 00h29   #10
Membre expérimenté
 
Inscription : mai 2002
Messages : 673
Détails du profil
Informations forums :
Inscription : mai 2002
Messages : 673
Points : 532
Points : 532
bon bha la, faut "debugger"... methode simple et rapide, rajoute echo '#ligne : ' . $sql; avant CHAQUE mysql_query en remplacant #ligne par le numéro que tu appels //ligne # du forum, histoire de voir d'ou ca vient.
gloubi est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 19/07/2006, 00h48   #11
Membre du Club
 
Inscription : juin 2006
Messages : 215
Détails du profil
Informations forums :
Inscription : juin 2006
Messages : 215
Points : 50
Points : 50
Citation:
Envoyé par gloubi
bon bha la, faut "debugger"... methode simple et rapide, rajoute echo '#ligne : ' . $sql; avant CHAQUE mysql_query en remplacant #ligne par le numéro que tu appels //ligne # du forum, histoire de voir d'ou ca vient.
Le débug ne donne rien sorry
dunbar est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 19/07/2006, 00h56   #12
Membre expérimenté
 
Inscription : mai 2002
Messages : 673
Détails du profil
Informations forums :
Inscription : mai 2002
Messages : 673
Points : 532
Points : 532
si ça ça donne rien, c'est que t'es rentré dans aucun des if()...

auquel cas, ton problème viens d'ailleur
gloubi est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 19/07/2006, 01h13   #13
Membre du Club
 
Inscription : juin 2006
Messages : 215
Détails du profil
Informations forums :
Inscription : juin 2006
Messages : 215
Points : 50
Points : 50
Citation:
Envoyé par gloubi
si ça ça donne rien, c'est que t'es rentré dans aucun des if()...

auquel cas, ton problème viens d'ailleur
Eventuellement mais alors ci le les supprime cela devrais fonctionner et c'est pas le cas

Merci
dunbar est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 19/07/2006, 02h43   #14
Membre du Club
 
Inscription : avril 2006
Messages : 24
Détails du profil
Informations personnelles :
Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

Informations forums :
Inscription : avril 2006
Messages : 24
Points : 59
Points : 59
As-tu vérifié que tes variables
$IDClient, $ref_1, $nom_1, $adr_1 etc....
contiennent quelquechose ?
Parce que ton script ne les définie pas. Peut être que la définition est dans le fichier que tu inclues, "../connect/fc-phpconnect.php" ?
Si tu récupères ces variables par la métohde POST ou GET alors il faut utiliser les tableaux superglobaux correspondants ($_POST['ref_1'] par exemple au lieu de $ref_1). Peut être que ça marche sur un autre serveur web parce que celui-ci est configuré pour définir automatiquemment les variables reçues dans ton script.

Enfin, ton
Code :
echo 'merci beaucoup, vos infos ont été enregistrées.';
est écrit dans la page renvoyée au client avant la balise <html> c'est quelque peu embettant ^^
Thuliad est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 19/07/2006, 03h11   #15
Membre du Club
 
Inscription : juin 2006
Messages : 215
Détails du profil
Informations forums :
Inscription : juin 2006
Messages : 215
Points : 50
Points : 50
Citation:
Envoyé par Thuliad
As-tu vérifié que tes variables
$IDClient, $ref_1, $nom_1, $adr_1 etc....
contiennent quelquechose ?
Parce que ton script ne les définie pas. Peut être que la définition est dans le fichier que tu inclues, "../connect/fc-phpconnect.php" ?
Si tu récupères ces variables par la métohde POST ou GET alors il faut utiliser les tableaux superglobaux correspondants ($_POST['ref_1'] par exemple au lieu de $ref_1). Peut être que ça marche sur un autre serveur web parce que celui-ci est configuré pour définir automatiquemment les variables reçues dans ton script.

Enfin, ton
Code :
echo 'merci beaucoup, vos infos ont été enregistrées.';
est écrit dans la page renvoyée au client avant la balise <html> c'est quelque peu embettant ^^
Salut
Voilà je pense que a mis le doigt dessus pas effectivement mes variable ne sont déffinie, je les déclare dans mon fichier index j'imagine ???

Citation:
<?php
if (isset($_POST['connexion']) && $_POST['connexion'] == 'Connexion'){
if ((isset($_POST['login']) && !empty($_POST['login'])) && (isset($_POST['pass']) && !empty($_POST['pass']))) {

include "connect/fc-phpconnect.php";
// on teste si une entrée de la base contient ce couple login / pass
$sql = 'SELECT url,nom FROM membre WHERE login="'.addslashes($_POST['login']).'" AND pass_md5="'.md5(addslashes($_POST['pass'])).'"';
$req = mysql_query($sql) or die('Erreur SQL !<br />'.$sql.'<br />'.mysql_error());
$data = mysql_fetch_array($req);
$nom = $data['nom'];
mysql_close();
// si on obtient une réponse, alors l'utilisateur est un membre
if (mysql_num_rows($req) == 1){
session_start();
$_SESSION['login'] = $_POST['login'];
$_SESSION['nom'] = $nom;
//'url' = adresse du champ "nom" correspondant au login de session de la TABLE membre
$url = $data['url'];
header('Location:'.$url);
exit();
}

// si on ne trouve aucune réponse, le visiteur s'est trompé soit dans son login, soit dans son mot de passe
elseif ($data[0] == 0) {
$erreur = 'Compte non reconnu.';
}

// sinon, alors la, il y a un gros problème
else {
$erreur = 'Probème dans la base de données : plusieurs membres ont les mêmes identifiants de connexion.';
}
}
else {
$erreur = 'Au moins un des champs est vide.';
}
}
?>
Et ci tu pouvais me donner un exemple j'apprécirais beaucoup
D'avance merci
dunbar est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 19/07/2006, 04h25   #16
Membre du Club
 
Inscription : juin 2006
Messages : 215
Détails du profil
Informations forums :
Inscription : juin 2006
Messages : 215
Points : 50
Points : 50
Ok voilà ça fonctionne enfin merci a toi tu ma donner la bonne direction
Citation:
<?php
session_start();
if (!isset($_SESSION['login'])) {
header ('Location: ../index.php');
exit();
}
include "../connect/fc-phpconnect.php";


// ligne 1 du form//

if ($ref_1 != '' && $nom_1 != '' && $adr_1 != '' && $rem_1 != '' && $tech_1 != '' && $date_1 != '' && $tel_1) {
}

$sql="INSERT INTO prestation_juillet_2006 (ref, nom, adr, rem, tech, date, tel) VALUES ('".mysql_escape_string($_POST['ref_1'])."','".mysql_escape_string($_POST['nom_1'])."','".mysql_escape_string($_POST['adr_1'])."','".mysql_escape_string($_POST['rem_1'])."','".mysql_escape_string($_POST['tech_1'])."','".mysql_escape_string($_POST['date_1'])."','".mysql_escape_string($_POST['tel_1'])."')";
mysql_query($sql)or die('Erreur SQL !'.$sql.''.mysql_error());


// ligne 2 fu form//

if ($ref_2 != '' && $nom_2 != '' && $adr_2 != '' && $rem_2 != '' && $tech_2 != '' && $date_2 != '' && $tel_2){

}
$sql="INSERT INTO prestation_juillet_2006 (ref, nom, adr, rem, tech, date, tel) VALUES ('".mysql_escape_string($_POST['ref_2'])."','".mysql_escape_string($_POST['nom_2'])."','".mysql_escape_string($_POST['adr_2'])."','".mysql_escape_string($_POST['rem_2'])."','".mysql_escape_string($_POST['tech_2'])."','".mysql_escape_string($_POST['date_2'])."','".mysql_escape_string($_POST['tel_2'])."')";
mysql_query($sql)or die('Erreur SQL !'.$sql.''.mysql_error());



// ligne 3 du form//

if ($ref_3 != '' && $nom_3 != '' && $adr_3 != '' && $rem_3 != '' && $tech_3 != '' && $date_3 != '' && $tel_3){

}
$sql="INSERT INTO prestation_juillet_2006 (ref, nom, adr, rem, tech, date, tel) VALUES ('".mysql_escape_string($_POST['ref_3'])."','".mysql_escape_string($_POST['nom_3'])."','".mysql_escape_string($_POST['adr_3'])."','".mysql_escape_string($_POST['rem_3'])."','".mysql_escape_string($_POST['tech_3'])."','".mysql_escape_string($_POST['date_3'])."','".mysql_escape_string($_POST['tel_3'])."')";
mysql_query($sql)or die('Erreur SQL !'.$sql.''.mysql_error());


// ligne 4 du form//

if ($ref_4 != '' && $nom_4 != '' && $adr_4 != '' && $rem_4 != '' && $tech_4 != '' && $date_4 != '' && $tel_4){

}
$sql="INSERT INTO prestation_juillet_2006 (ref, nom, adr, rem, tech, date, tel) VALUES ('".mysql_escape_string($_POST['ref_4'])."','".mysql_escape_string($_POST['nom_4'])."','".mysql_escape_string($_POST['adr_4'])."','".mysql_escape_string($_POST['rem_4'])."','".mysql_escape_string($_POST['tech_4'])."','".mysql_escape_string($_POST['date_4'])."','".mysql_escape_string($_POST['tel_4'])."')";
mysql_query($sql)or die('Erreur SQL !'.$sql.''.mysql_error());



// ligne 6 du form//

if ($ref_5 != '' && $nom_5 != '' && $adr_5 != '' && $rem_5 != '' && $tech_5 != '' && $date_5 != '' && $tel_5){

}
$sql="INSERT INTO prestation_juillet_2006 (ref, nom, adr, rem, tech, date, tel) VALUES ('".mysql_escape_string($_POST['ref_5'])."','".mysql_escape_string($_POST['nom_5'])."','".mysql_escape_string($_POST['adr_5'])."','".mysql_escape_string($_POST['rem_5'])."','".mysql_escape_string($_POST['tech_5'])."','".mysql_escape_string($_POST['date_5'])."','".mysql_escape_string($_POST['tel_5'])."')";
mysql_query($sql)or die('Erreur SQL !'.$sql.''.mysql_error());



//ligne 6 du form//

if ($ref_6 != '' && $nom_6 != '' && $adr_6 != '' && $rem_6 != '' && $tech_6 != '' && $date_6 != '' && $tel_6) {

}
$sql="INSERT INTO prestation_juillet_2006 (ref, nom, adr, rem, tech, date, tel) VALUES ('".mysql_escape_string($_POST['ref_6'])."','".mysql_escape_string($_POST['nom_6'])."','".mysql_escape_string($_POST['adr_6'])."','".mysql_escape_string($_POST['rem_6'])."','".mysql_escape_string($_POST['tech_6'])."','".mysql_escape_string($_POST['date_6'])."','".mysql_escape_string($_POST['tel_6'])."')";
mysql_query($sql)or die('Erreur SQL !'.$sql.''.mysql_error());

?>
<html>
<head></head>
<body>
<body background="../img/grd-4px.gif">
<?php
echo 'merci beaucoup, vos infos ont été enregistrées.';
?>
<a href="../deconnexion.php"><font color="#FF0000">Déconnexion</font></a>

</body>
</html>
Par contre je me retrouve avec un autre problème mes IF ne fonctionne plus quand j'introduit 1 lignes les 5 autre s'enregistre vide dans ma TABLE
Pour mes if ne fonctionne plus, et surtout POURQUOI y a t'il autant de différence en Local avec le serveur ?????

Merci
dunbar est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 19/07/2006, 13h47   #17
Membre expérimenté
 
Inscription : mai 2002
Messages : 673
Détails du profil
Informations forums :
Inscription : mai 2002
Messages : 673
Points : 532
Points : 532
Je vais peut être me répéter, mais avec ton dernier exemple, avec ou sans if(), c'est EXACTEMENT pareil !

Code :
1
2
 
if(condition) { } instruction
est strictement égale à

un if(), ca fonctionne

Code :
1
2
 
if(condition) { instructions }
gloubi est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 19/07/2006, 13h53   #18
Membre du Club
 
Inscription : avril 2006
Messages : 24
Détails du profil
Informations personnelles :
Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

Informations forums :
Inscription : avril 2006
Messages : 24
Points : 59
Points : 59
Oki.
Je te suggère d'utiliser une boucle au lieu de réécrire cinq fois les mêmes choses pour validation.php :
Code :
1
2
3
4
5
6
7
8
 
...
for ($i = 5; $i--; )
{
  $sql="INSERT INTO prestation_juillet_2006 (ref, nom, adr, rem, tech, date, tel) 
        VALUES ('".mysql_escape_string($_POST['ref_'.$i])."','".mysql_escape_string($_POST['nom_'.$i])."',.........;
  mysql_query($sql)or die('Erreur SQL !'.$sql.''.mysql_error());
}
qui inserera de la cinquième à la première ligne.

Et en effet pour les IF
Code :
1
2
3
 
if ($ref_1 != '' && $nom_1 != '' && $adr_1 != '' && $rem_1 != '' && $tech_1 != '' && $date_1 != '' && $tel_1) {
}
signifie que
SI $ref_1 n'est pas vide et que $nom_1 n'est pas vide et...etc
ALORS faire {}

et {} ne fais rien donc tes if ne servent à rien.
Thuliad est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 19/07/2006, 14h32   #19
Membre du Club
 
Inscription : juin 2006
Messages : 215
Détails du profil
Informations forums :
Inscription : juin 2006
Messages : 215
Points : 50
Points : 50
Citation:
Envoyé par Thuliad
Oki.
Je te suggère d'utiliser une boucle au lieu de réécrire cinq fois les mêmes choses pour validation.php :
Code :
1
2
3
4
5
6
7
8
 
...
for ($i = 5; $i--; )
{
  $sql="INSERT INTO prestation_juillet_2006 (ref, nom, adr, rem, tech, date, tel) 
        VALUES ('".mysql_escape_string($_POST['ref_'.$i])."','".mysql_escape_string($_POST['nom_'.$i])."',.........;
  mysql_query($sql)or die('Erreur SQL !'.$sql.''.mysql_error());
}
qui inserera de la cinquième à la première ligne.

Et en effet pour les IF
Code :
1
2
3
 
if ($ref_1 != '' && $nom_1 != '' && $adr_1 != '' && $rem_1 != '' && $tech_1 != '' && $date_1 != '' && $tel_1) {
}
signifie que
SI $ref_1 n'est pas vide et que $nom_1 n'est pas vide et...etc
ALORS faire {}

et {} ne fais rien donc tes if ne servent à rien.
Merci ta boucle est en effet BEAUCOUP plus simple que ma méthode de réecrire 6 x la même requete, par contre je voulais de if pour qu'il n'enregistre pas dans la TABLE les lignes vide de mon formulaire avec ta méthode cela fonctionne mais il enregistre même les lignes vide ???
Qustion comment je place mes if dans ta méthode ?
dunbar est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 19/07/2006, 14h51   #20
Membre du Club
 
Inscription : avril 2006
Messages : 24
Détails du profil
Informations personnelles :
Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

Informations forums :
Inscription : avril 2006
Messages : 24
Points : 59
Points : 59
Tu aurais pu trouver ça tout seul



Code :
1
2
3
4
5
6
7
8
 
for ($i = 5; $i--; )
{
  if (!$_POST['ref_'.$i] || !$_POST['nom_'.$i] || !$_POST['adr_'.$i].............) continue;
  $sql="INSERT INTO prestation_juillet_2006 (ref, nom, adr, rem, tech, date, tel) 
        VALUES ('".mysql_escape_string($_POST['ref_'.$i])."','".mysql_escape_string($_POST['nom_'.$i])."',.........;
  mysql_query($sql)or die('Erreur SQL !'.$sql.''.mysql_error());
}
l'opérateur || signifie OU
l'opérateu ! est l'opérateur logique de négation (en gros dans ton cas remplacerait un == '')
continue passe directement à l'itération suivante
Thuliad est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 04h58.


 
 
 
 
Partenaires

Hébergement Web