Page inaccessible et traitement non realisé
Résolu
youka12
Messages postés
1
Date d'inscription
Statut
Membre
Dernière intervention
-
MickaToast Messages postés 142 Date d'inscription Statut Membre Dernière intervention -
MickaToast Messages postés 142 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
j'ai un formulaire qui me dirige vers un fichier ii.php ou je fais le traitement mais il m'affiche une page blanche ii.php je ne sais pas quoi faire
voilà mon code : inscription.php
<form action="ii.php" method="POST">
<fieldset>
<label for="nom"><strong> nom </strong></label>
<input type="text" name="nom" id="nom" />
<label for="prenom"><strong>prénom </strong></label>
<input type="text" name="prenom" id="prenom" />
<label for="prenom"><strong>age </strong></label>
<input type="text" name="age" id="prenom" />
<!--<input type="date" name="date">-->
<label for="email"><strong>e-mail </strong></label>
<input type="email" name="email" id="email" />
<br />
<br />
<label for="prenom"><strong>adresse </strong></label>
<input type="text" name="adresse" id="prenom" />
<br/>
<br />
<label for="prenom"><strong>telephone</strong></label>
<input type="text" name="telephone" id="prenom" />
<label for="pays"><strong>vous etes :</strong></label>
<select name="type" id="pays">
<option value="individuel">individuel</option>
<option value="societé">societé</option>
<option value="groupe">groupe</option>
</select>
<label for="adresse1"><strong>Entrer votre login ! </strong></label>
<input type="texte" name="adresse1" id="adresse1" />
<?php
if(isset($_SESSION['in'])&&($_SESSION['in']==1)){
echo'ce login existe déja!!!';
}
?>
et le code ii.php :
<?php
session_start();
include('connexion.php');
if(isset($_POST['submit'])){
if(isset($_POST['nom'])&&isset($_POST['prenom'])&&isset($_POST['age'])&&isset($_POST['email'])&&isset($_POST['adresse'])&&isset($_POST['telephone'])&&isset($_POST['type'])&&isset($_POST['login'])&&isset($_POST['passe'])&&isset($_POST['passe1'])){
$nom=$_POST['nom'];
$prenom=$_POST['prenom'];
$age=$_POST['age'];
$mail=$_POST['email'];
$adresse=$_POST['adresse'];
$telephone=$_POST['telephone'];
$type=$_POST['type'];
$login=$_POST['login'];
$passe=$_POST['passe'];
$passe1=$_POST['passe1'];
$date=date("d-m-Y");
$sel='SELECT * FROM 'compteclient' WHERE 'login' = "'.$login.'" ';
$exe=mysql_query($sel);
if (mysql_num_rows($exe)==1){
$_SESSION['in']=0;
header('location:inscription.php');
}
else{
if($passe==$passe1){
$ins="INSERT INTO 'compteclient'('NComCli', 'nom', 'prenom', 'login', 'motDePasse', 'Type', 'dateCre', 'adresse', 'tel') VALUES ('','.$nom.','$prenom','$login','$passe','$type','$date','$adresse','$telephone')";
$ex=mysql_query($ins);
if($ex){$_SESSION['in']=1;
header('location:compteclient.html');}
}
else{
$_SESSION['in']=2;
header('location:inscription.html');}
}
}
}
?>
j'ai un formulaire qui me dirige vers un fichier ii.php ou je fais le traitement mais il m'affiche une page blanche ii.php je ne sais pas quoi faire
voilà mon code : inscription.php
<form action="ii.php" method="POST">
<fieldset>
<label for="nom"><strong> nom </strong></label>
<input type="text" name="nom" id="nom" />
<label for="prenom"><strong>prénom </strong></label>
<input type="text" name="prenom" id="prenom" />
<label for="prenom"><strong>age </strong></label>
<input type="text" name="age" id="prenom" />
<!--<input type="date" name="date">-->
<label for="email"><strong>e-mail </strong></label>
<input type="email" name="email" id="email" />
<br />
<br />
<label for="prenom"><strong>adresse </strong></label>
<input type="text" name="adresse" id="prenom" />
<br/>
<br />
<label for="prenom"><strong>telephone</strong></label>
<input type="text" name="telephone" id="prenom" />
<label for="pays"><strong>vous etes :</strong></label>
<select name="type" id="pays">
<option value="individuel">individuel</option>
<option value="societé">societé</option>
<option value="groupe">groupe</option>
</select>
<label for="adresse1"><strong>Entrer votre login ! </strong></label>
<input type="texte" name="adresse1" id="adresse1" />
<?php
if(isset($_SESSION['in'])&&($_SESSION['in']==1)){
echo'ce login existe déja!!!';
}
?>
et le code ii.php :
<?php
session_start();
include('connexion.php');
if(isset($_POST['submit'])){
if(isset($_POST['nom'])&&isset($_POST['prenom'])&&isset($_POST['age'])&&isset($_POST['email'])&&isset($_POST['adresse'])&&isset($_POST['telephone'])&&isset($_POST['type'])&&isset($_POST['login'])&&isset($_POST['passe'])&&isset($_POST['passe1'])){
$nom=$_POST['nom'];
$prenom=$_POST['prenom'];
$age=$_POST['age'];
$mail=$_POST['email'];
$adresse=$_POST['adresse'];
$telephone=$_POST['telephone'];
$type=$_POST['type'];
$login=$_POST['login'];
$passe=$_POST['passe'];
$passe1=$_POST['passe1'];
$date=date("d-m-Y");
$sel='SELECT * FROM 'compteclient' WHERE 'login' = "'.$login.'" ';
$exe=mysql_query($sel);
if (mysql_num_rows($exe)==1){
$_SESSION['in']=0;
header('location:inscription.php');
}
else{
if($passe==$passe1){
$ins="INSERT INTO 'compteclient'('NComCli', 'nom', 'prenom', 'login', 'motDePasse', 'Type', 'dateCre', 'adresse', 'tel') VALUES ('','.$nom.','$prenom','$login','$passe','$type','$date','$adresse','$telephone')";
$ex=mysql_query($ins);
if($ex){$_SESSION['in']=1;
header('location:compteclient.html');}
}
else{
$_SESSION['in']=2;
header('location:inscription.html');}
}
}
}
?>
A voir également:
- Page inaccessible et traitement non realisé
- Supprimer page word - Guide
- Site inaccessible n'autorise pas la connexion - Guide
- Reconsidérer le traitement de vos informations à des fins publicitaires - Accueil - Réseaux sociaux
- Traitement de texte gratuit - Guide
- Récupérer un compte facebook piraté inaccessible - Guide
19 réponses
Salut !
Oulala ! Faille de sécurité... Alerte à l'injection SQL !!!
Il faut TOUJOURS échapper les variables venant de l'utilisateur...
En particulier lorsque c'est utilisé dans une requête SQL après...
A bon entendeur...
S@M
Oulala ! Faille de sécurité... Alerte à l'injection SQL !!!
Il faut TOUJOURS échapper les variables venant de l'utilisateur...
En particulier lorsque c'est utilisé dans une requête SQL après...
A bon entendeur...
S@M
Si une page devient vide, il faut regarder les premières instructions. Ici, je vois ceci : if(isset($_POST['submit'])){
Or, aucune case de formulaire comporte le name="submit".
Or, aucune case de formulaire comporte le name="submit".
salut !
si il y a une case la voilà !
<input type="submit" name="submit" value="S'inscrire" /><br /> </center>
mais c'est le méme problème !!
si il y a une case la voilà !
<input type="submit" name="submit" value="S'inscrire" /><br /> </center>
mais c'est le méme problème !!
Il y a une erreur alors dans cette ligne :
Vérifie bien dans ton formulaire qu'il y a bien tout ces $_POST et qu'il sont bien envoyé.
Par exemple, sur ta page ii.php je te conseil de mettre temporairement en première ligne ceci :
Puis, tu vas sur inscription.php, tu fais un formulaire et tu l'envoie. Si il y a une parse error qui dit qu'un $_POST n'existe pas, c'est que le problème vient de ce $_POST.
if(isset($_POST['nom'])&&isset($_POST['prenom'])&&isset($_POST['age'])&&isset($_POST['email'])&&isset($_POST['adresse'])&&isset($_POST['telephone'])&&isset($_POST['type'])&&isset($_POST['login'])&&isset($_POST['passe'])&&isset($_POST['passe1'])){
Vérifie bien dans ton formulaire qu'il y a bien tout ces $_POST et qu'il sont bien envoyé.
Par exemple, sur ta page ii.php je te conseil de mettre temporairement en première ligne ceci :
echo $_POST['nom'];
echo $_POST['prenom'];
echo $_POST['age'];
echo $_POST['email'];
echo $_POST['adresse'];
echo $_POST['telephone'];
echo $_POST['type'];
echo $_POST['login'];
echo $_POST['passe'];
echo $_POST['passe1'];
Puis, tu vas sur inscription.php, tu fais un formulaire et tu l'envoie. Si il y a une parse error qui dit qu'un $_POST n'existe pas, c'est que le problème vient de ce $_POST.
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
salut !
j'ai vérifié et ça m'affiche tous les coordonnées que j'ai tapé !! ça veux dire que les $_POST marchent !!
je ne sais pas ce qui fais problème parce que j'ai annulé la vérification(la ligne des isset....) et quand j'effectue l'ajout dans la base de données rien ne se rajoute !
j'ai vérifié et ça m'affiche tous les coordonnées que j'ai tapé !! ça veux dire que les $_POST marchent !!
je ne sais pas ce qui fais problème parce que j'ai annulé la vérification(la ligne des isset....) et quand j'effectue l'ajout dans la base de données rien ne se rajoute !
Est-ce que passe est bien exactement pareil à passe1, sur cette ligne :
Si oui, alors le problème vient de quand tu envoie tes informations sur la base de donnée. Ta table est bien créée ? Tu as bien ajouté les colonnes 'nom', 'prenom' etc.. avant d'envoyer tes requêtes?
De plus, je te conseil de tester ceci :
Après la ligne :
Ajoute ces lignes pour vérifier l'erreur lors de l'envoie sur la base de donnée
La fonction die te renverra alors exactement ce qu'il ne va pas dans ton code (si php n'a pas réussi à effectuer la requête SQL).
if($passe==$passe1){
Si oui, alors le problème vient de quand tu envoie tes informations sur la base de donnée. Ta table est bien créée ? Tu as bien ajouté les colonnes 'nom', 'prenom' etc.. avant d'envoyer tes requêtes?
De plus, je te conseil de tester ceci :
Après la ligne :
$ex=mysql_query($ins);
Ajoute ces lignes pour vérifier l'erreur lors de l'envoie sur la base de donnée
if (!$ex) { die('Requête invalide : ' . mysql_error()); }
La fonction die te renverra alors exactement ce qu'il ne va pas dans ton code (si php n'a pas réussi à effectuer la requête SQL).
je ne sais pas où est le problème dans cette requette :
$ins='INSERT INTO compteclient(NOffre,nom,prenom,logi,motDePasse,Type,dateCre,adresse,tel) VALUES
('','$nom','.$prenom.','.$login.','.$passe.','.$type.','.$date.','.$adresse.','.$telephone.')';
$ins='INSERT INTO compteclient(NOffre,nom,prenom,logi,motDePasse,Type,dateCre,adresse,tel) VALUES
('','$nom','.$prenom.','.$login.','.$passe.','.$type.','.$date.','.$adresse.','.$telephone.')';
Youka, a tu essayé d'utiliser :
Pour les failles SQL je te conseil de visiter ce lien :
http://www.tutorialspoint.com/mysql/mysql-sql-injection.htm
if (!$ex) { die('Requête invalide : ' . mysql_error()); }?
Pour les failles SQL je te conseil de visiter ce lien :
http://www.tutorialspoint.com/mysql/mysql-sql-injection.htm
oui je l'ai essayé et ça m'affiche
ce message :Requête invalide : Data truncated for column 'Type' at row 1
ce message :Requête invalide : Data truncated for column 'Type' at row 1
Très bien, le problème vient donc de ta colonne "Type" dans ta base de donnée.
Il faut que tu vérifie si elle est bien configurée, par exemple si tu rentre du texte dans ton formulaire et que dans ta base de donnée ça doit être des nombres, il y aura erreur. Si tu as défini "Type" avec un varchar de 255 et que tu rentres un texte plus grand, tu auras l'erreur "Valeur tronqué pour la colonne", c'est exactement ton erreur.
Si tu ne sait pas comment faire, dit moi ce qui est attendu dans $_POST["type"] (c'est un texte court, un texte long?) et donne moi aussi les paramètres de "Type" dans ta base de donnée.
PS: Courage, on arrive au but :D
Il faut que tu vérifie si elle est bien configurée, par exemple si tu rentre du texte dans ton formulaire et que dans ta base de donnée ça doit être des nombres, il y aura erreur. Si tu as défini "Type" avec un varchar de 255 et que tu rentres un texte plus grand, tu auras l'erreur "Valeur tronqué pour la colonne", c'est exactement ton erreur.
Si tu ne sait pas comment faire, dit moi ce qui est attendu dans $_POST["type"] (c'est un texte court, un texte long?) et donne moi aussi les paramètres de "Type" dans ta base de donnée.
PS: Courage, on arrive au but :D
oué oué !!! merçi beaucoupppppp !! et bezzzzzaaaaaaff à la marocaine !!
bn le type c'etait une enumeration je l'ai changé en varchar é ça a marché !!
c'est mon pfe je dois le terminer dans quelques jours et je suis pressé par le temps !
bn le type c'etait une enumeration je l'ai changé en varchar é ça a marché !!
c'est mon pfe je dois le terminer dans quelques jours et je suis pressé par le temps !
Bonjour,
je veux afficher un texte et j'ai mais ce code .
<?php
include('connexion.php');
$q="SELECT * FROM 'offre' where 'NOffre'='3'";
$qq=mysql_query($q);
if(!$qq){die('errroor'.mysql_error());}
$qqq=mysql_fetch_row($qq);
if(!$qqq){die('error'.mysql_error());}
echo $qqq['description'];
?>
l'erreur c'est : NOTICE: UNDEFINED INDEX: DESCRIPTION IN C:\W....
je veux afficher un texte et j'ai mais ce code .
<?php
include('connexion.php');
$q="SELECT * FROM 'offre' where 'NOffre'='3'";
$qq=mysql_query($q);
if(!$qq){die('errroor'.mysql_error());}
$qqq=mysql_fetch_row($qq);
if(!$qqq){die('error'.mysql_error());}
echo $qqq['description'];
?>
l'erreur c'est : NOTICE: UNDEFINED INDEX: DESCRIPTION IN C:\W....
voilà la colonne :
10 description varchar(3000) latin1_swedish_ci Non
et meme si je mets une autre colonne de la table offre ça me donne la meme erreur !! je ne sais pas où existe le probleme
10 description varchar(3000) latin1_swedish_ci Non
et meme si je mets une autre colonne de la table offre ça me donne la meme erreur !! je ne sais pas où existe le probleme