[RESOLU] Code PHP qui s'affiche dans le navigateur

Eléphanteau du PHP | 17 Messages

22 mai 2014, 11:57

Bonjour tout le monde,
J'ai un problème : lorsque je veux ajouter qlq chose dans la base de données via un formulaire (par exemple formulaire d'inscription) on m'affiche le code php de la page traitement, et les données que je veux ajouter à la base de données ne s'ajoutent pas. Il n y a ni un msg d'erreur ni rien juste le code php après que je clique sur le bouton ajouter par exemple !! vous avez une idée pourquoi ?!
voila le code de la formulaire :
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>ONCF</title>
<link rel="shortcut icon" href="images/icone.jpg">
<link rel="stylesheet" type="text/css" href="style.css" />
<script language="javascript" type="text/javascript" src="js/niceforms.js"></script>
<link rel="stylesheet" type="text/css" media="all" href="niceforms-default.css" />

</head>
<body>
<div id="main_container">

<div class="header">
<div class="logo"><a href="#"><img src="images/logo.png" alt="" title="" border="0" /></a></div>

</div>

<div class="main_content">
<div class="menu">
</div>
</div>
<div class="center_content">



<div class="left_content">
<div class="sidebarmenu">

</div>
</div>

<div class="right_content">

<center><h2>Veuillez remplir le formulaire d'inscription</h2></center>

<div class="form">
<form action="traitement.php" method="POST" class="niceform">
<fieldset>
<dl>
<dt><label for="nom">Nom </label></dt>
<dd><input type="text" name="nom" size="54" /></dd>
</dl>
<dl>
<dt><label for="prenom">Prénom</label></dt>
<dd><input type="text" name="prenom" size="54" /></dd>
</dl>
<dl>
<dt><label for="matricule">Matricule</label></dt>
<dd><input type="text" name="matricule" size="54" /></dd>
</dl>
<dl>
<dt><label for="service">Service</label></dt>
<dd>
<select size="1" name="service" >
<option value="">Service technique</option>
<option value="">Service RH</option>
<option value="">Ateliers</option>
</select>
</dd>
</dl>
<dl>
<dt><label for="uti">Login</label></dt>
<dd><input type="text" name="username" size="54" /></dd>
</dl>
<dl>
<?php
if(isset($_GET['p']))
echo $_GET['p'];
?>
<dt><label for="password">Password</label></dt>
<dd><input type="password" name="password" size="54" /></dd>
</dl>
<dl>
<dt><label for="password">confirmation du passe</label></dt>
<dd><input type="password" name="confirmationpass" size="54" /></dd>
</dl>
<?php
if(isset($_GET['m']))
echo $_GET['m'];
?>
<dl class="submit">
<input type="submit" name="submit" value="Confirmer" class="btn"/>
<input type="reset" name="reset" value="Annuler" class="btn"/>
</dl>



</fieldset>
</form>
</div>


</div><!-- end of right content-->


</div> <!--end of center content -->




<div class="clear"></div>
</div> <!--end of main content-->
</body>
</html>
et voila le code de la page traitement.php qui s'affiche :
<?php
$nom=$_POST['nom'];
$prenom=$_POST['prenom'];
$matricule=$_POST['matricule'];
$service=$_POST['service'];
$username=$_POST['username'];
$password=$_POST['password'];
$confirmationpass=$_POST['confirmationpass'];
$date=date('y-m-d');
$s=mysql_connect('localhost','root','');
if($s)
{
echo"connection reussite<br>";
mysql_select_db('pfe');
$res=mysql_query("select username from profil where username='".$username."'");
$nbligne=mysql_num_rows($res);
$tr=0;
if($nbligne!=0)
{
$tr=1;
}
$msg1="";
$msg2="";
if($tr==1 or $password!=$confirmationpass)
{
if($tr==1 )
$msg1="username existant";
if($password!=$confirmationpass)
$msg2="Mot de passe non valide";
header('location: inscriptionuti.php ?p='.$msg1.'&m='.$msg2);
}
else
{
$res=mysql_query("insert into profil values('','".$nom."','".$prenom."','".$matricule."','".$service."','".$username."','".$password."','".$confirmationpass."','')");
if($res)
{
echo "Inscription reussite";
}
else
{
echo "Inscription non valide";
}
}


}


?>

Eléphant du PHP | 71 Messages

22 mai 2014, 12:10

$res=mysql_query("insert into profil values('','".$nom."','".$prenom."','".$matricule."','".$service."','".$username."','".$password."','".$confirmationpass."','')");
Je pense que l'erreur vient de ta requête, le sens des guillemets n'est pas le bon c'est " puis ' + champs (ex $nom) et ' puis ". De plus, évites de laisser des champs libres, met NULL à la place, ça fausse la requête des fois :)

ce qui donnerait :
$res=mysql_query("insert into profil values(NULL,"'.$nom.'","'.$prenom.'","'.$matricule.'","'.$service.'","'.$username.'","'.$password.'","'.$confirmationpass.'",NULL)");

En espérant avoir pu t'aider ;)

Eléphanteau du PHP | 17 Messages

22 mai 2014, 12:27

Je vous remercie tout d'abord d'avoir penser à m'aider :)
Mais malheureusement le problème persiste, j'ai mis ce que vous venez de me donner mais tjrs le code qui s'affiche ! :cry:

Eléphant du PHP | 422 Messages

22 mai 2014, 13:28

post doublons
toujours faire une recherche sur http://www.php.net et/ou sur http://www.google.fr :)
utiliser http://ideone.com/ pour vos codes :)

Avatar du membre
Modérateur PHPfrance
Modérateur PHPfrance | 8758 Messages

23 mai 2014, 13:09

Modération :
Le multipostage est interdit sur le forum.

Ce sujet a été verrouillé et sera supprimé sous peu.
Des réponses peuvent être apportées à cette adresse :
php-debutant/code-php-qui-affiche-dans- ... 71146.html

Merci de prendre le temps de lire les règlements.
Il en faut peu pour être heureux ......