Problème ajout de champs

Répondre
helly
le 24/11/2007 à 20:15
helly
Bonjour à tous!
J'ai décidé de prendre la source de l'espace membres proposée sur ce site et de l'adapter pour le site d'un ami.
Tout marche très bien, sauf que j'aurais besoin d'ajouter des champs au formulaire d'inscription et que les données insérées dans ces derniers ne sont pas enregistrés dans la base.
Voici mon code:
inscription
<form method="post" action="valid_ok.php">
Login<br><input name="login" type="text" size="20" maxlength="12" />
<br>
Password<br><input name="password" type="text" size="20" maxlength="12" />
<br>
Verification<br><input name="pass_confirm" type="text" size="20" maxlength="12" />
<br>
email<br><input name="email" type="text" size="20" maxlength="50" />
<br>
Code<br><input name="code" type="text" size="10" maxlength="10" />
<br>
D&eacute;but<br><input name="debut" type="text" size="8" maxlength="8" />
<br>
Fin<br><input name="fin" type="text" size="8" maxlength="8" />
<br>
FAI<br><input name="fai" type="text" size="20" maxlength="20" />
<br><br>
<input type="submit" name="inscription" value="Inscription" /></form>


valid_ok.php
<?php
if (isset($_POST['inscription']) && $_POST['inscription'] == 'Inscription') {

if ((isset($_POST['login']) && !empty($_POST['login'])) && (isset($_POST['pass']) && !empty($_POST['pass'])) && (isset($_POST['pass_confirm']) && !empty($_POST['pass_confirm'])) && (isset($_POST['email']) && !empty($_POST['email'])) && (isset($_POST['code']) && !empty($_POST['code'])) && (isset($_POST['debut']) && !empty($_POST['debut'])) && (isset($_POST['fin']) && !empty($_POST['fin'])) && (isset($_POST['fai']) && !empty($_POST['fai']))) {

if ($_POST['pass'] != $_POST['pass_confirm']) {
$erreur = 'Les 2 mots de passe sont différents.';
}
else {
$base = mysql_connect ('SERVEUR', 'USER', 'PASS');
mysql_select_db ('NOMBASE', $base);


$sql = 'SELECT count(*) FROM membre WHERE login="'.mysql_escape_string($_POST['login']).'"';
$req = mysql_query($sql) or die('Erreur SQL !<br />'.$sql.'<br />'.mysql_error());
$data = mysql_fetch_array($req);

if ($data[0] == 0) {
$sql = 'INSERT INTO membre (id,login,pass_md5,email,code,debut,fin,fai) VALUES("", "'.mysql_escape_string($_POST['login']).'", "'.md5(mysql_escape_string($_POST['pass'])).'", "'.mysql_escape_string($_POST['email']).'", "'.mysql_escape_string($_POST['code']).'", "'.mysql_escape_string($_POST['debut']).'", "'.mysql_escape_string($_POST['fin']).'", "'.mysql_escape_string($_POST['fai']).'")';
mysql_query($sql) or die('Erreur SQL !'.$sql.'<br />'.mysql_error());

header('Location: index.php');
exit();
}
else {
$erreur = 'Un membre possède déjà ce login.';
}
}
}
else {
$erreur = 'Au moins un des champs est vide.';
}
}
?>

Le résultat de tout ça est une page blanche (le script ne va donc pas jusqu'à la redefinition du header) et que les trois premiers champs enregistrés dans la base de données.
J'ai essayé tout un tas de trucs mais rien ne marche et je ne sais pas où j'ai fait une boulette.

Merci d'avance pour votre aide :)
Keika
le 26/11/2007 à 04:44
Keika
hmm question bete mais... tu as cree les tuples dans MySQL ? tu sais ceux que tu veux ajouter. email,code,debut,fin,fai
Le PHP --> C'est dur !
Répondre

Ecrire un message

Votre message vient d'être créé avec succès.
LoadingChargement en cours