Problème de syntaxe ou autre

Résolu/Fermé
BaptisteDebes Messages postés 90 Date d'inscription mardi 8 mai 2012 Statut Membre Dernière intervention 14 octobre 2013 - 23 mai 2012 à 13:01
mpmp93 Messages postés 6648 Date d'inscription mercredi 13 avril 2011 Statut Membre Dernière intervention 28 septembre 2015 - 23 mai 2012 à 13:56
Bonjour,


Je suis entrain d'améliorer mon espace membre en ajoutant un système de création de la ligne directement dans ma table mais voilà rien ne ce passe pourriez-vous corriger mon code s.v.p, merci d'avance.



<?php
session_start();
?>


<?php
$_SESSION['mdp'] = $passmd5;
$_SESSION['ps'] = $pseudo;

if (isset($_SESSION['mdp'])) {

if (isset($_SESSION['ps'])) {
$base = mysql_connect ('localhost', '******', '......');
mysql_select_db('compte', $base);

$sql2 = "SELECT id FROM compte WHERE pseudo='$pseudo' ";
$req2 = mysql_query($sql2) or die('Erreur SQL !<br />'.$sql2.'<br />'.mysql_error());
while ($data = mysql_fetch_array($req2)) {
$id = $data['id'];
};
if (!isset($id)){
echo 'erreur';
}
else {
?>
<?php
else {
header('Location: creation.php');
}

?>
<?php

$base2 = mysql_connect ('localhost', 'Baptiste', 'BaPtIsTe1998');
mysql_select_db('compte', $base);


$sql = 'INSERT INTO caracteristiques VALUES("'.mysql_escape_string($id).'")';
mysql_query($sql) or die('Erreur SQL !'.$sql.'<br />'.mysql_error());


header('Location: connexion.php');
}
}
}
?>

3 réponses

mpmp93 Messages postés 6648 Date d'inscription mercredi 13 avril 2011 Statut Membre Dernière intervention 28 septembre 2015 1 339
23 mai 2012 à 13:27
Bonjour,

c'est sans doute ceci qui déconne:

header('Location: creation.php'); 


le header NE DOIT ETRE UTILISE que si rien d'autre n'a été affiché.... ce qui n'est pas le cas de votre code:

<?php
session_start();
?>


<?php 


Remplacez vos header par des include et chargez les portions de code qui font bien ce qu'on leur demande dans le contexte du script.

A+
0
Mopra-L Messages postés 146 Date d'inscription lundi 29 juin 2009 Statut Membre Dernière intervention 23 mai 2012 6
23 mai 2012 à 13:27
Bonjour,

Essaye, dans un 1er temps, d'enlever tout ce qui concerne les sessions (donc session_start, et les $_SESSION que tu remplace par des variables en dur), car le problème peut venir de là.


Essaye aussi d'afficher les erreurs, si possible, car ça ne doit pas être le cas actuellement (par contre, comment faire ça, j'en sais fichtre rien, je crois que c'est une variable à modifier dans un .ini ^^')

0
BaptisteDebes Messages postés 90 Date d'inscription mardi 8 mai 2012 Statut Membre Dernière intervention 14 octobre 2013
23 mai 2012 à 13:52
Merci pour vos réponses mais je n'y arrive toujours pas voici le code après quelques modifications :

<?php
session_start();
?>


<?php
$_SESSION['ps'] = $pseudo;



if (isset($pseudo)) {
$base = mysql_connect ('localhost', '*****', '.......');
mysql_select_db('compte', $base);

$sql2 = "SELECT id FROM compte WHERE pseudo='$pseudo' ";
$req2 = mysql_query($sql2) or die('Erreur SQL !<br />'.$sql2.'<br />'.mysql_error());
while ($data = mysql_fetch_array($req2)) {
$id = $data['id'];
};
if (!isset($id)){
echo 'erreur';
}
else {
?>
<?php
else {
include 'creation.php';
}

?>
<?php

$base2 = mysql_connect ('localhost', 'Baptiste', 'BaPtIsTe1998');
mysql_select_db('compte', $base);


$sql = 'INSERT INTO caracteristiques VALUES("'.mysql_escape_string($id).'")';
mysql_query($sql) or die('Erreur SQL !'.$sql.'<br />'.mysql_error());


include 'connexion.php';
}
}

?>






Merci d'avance.
0
mpmp93 Messages postés 6648 Date d'inscription mercredi 13 avril 2011 Statut Membre Dernière intervention 28 septembre 2015 1 339
23 mai 2012 à 13:56
Y vous dit quoi comme erreur? Rien ou quelque chose?

Une astuce; vous collez un

echo "xxx";

en début de code, vous lancez le script...
vous déplacez cette ligne plus bas dans le code...
tant que xxx s'affiche, tout est OK.
si xxx s'affiche plus, c'est là dans ce coin qu'est le blème...

A+
0