Page 1 sur 1

probleme pour inclure le nom de l'auteur d'un message

Posté : 01 nov. 2010, 16:27
par Shim
j'essais de mettre une variable "hidden" a savoir le membre qui redige le message pour l'insérer dans ma bdd mais ca marche pas.
$titre = (isset($_POST['titre']) && trim($_POST['titre']) != '')? Verif_magicquotes($_POST['titre']) : null;
$texte = (isset($_POST['texte']) && trim($_POST['texte']) != '')? Verif_magicquotes($_POST['texte']) : null;
$file = (isset($_POST['file']) && trim($_POST['file']) != '')? Verif_magicquotes($_POST['file']) : null;
$auteur= (isset($_POST['auteur']) && trim($_POST['auteur']) != '')? Verif_magicquotes($_POST['auteur']) : null;

 if(isset($titre,$texte))
    {
		
$hostname = "localhost";
$database = "membres";
$username = "root";
$password = "";
$connection = mysql_connect($hostname, $username, $password) or die(mysql_error());

  mysql_query("SET NAMES 'utf8'");
mysql_select_db($database, $connection);

$insertion = "INSERT INTO forum (titre,texte,file,auteur) VALUES ('".$titre."', '".$texte."', '".$file."', '".$auteur."')";
    $inser_exec = mysql_query($insertion) or die(mysql_error());
	if ($inser_exec === true)
             {
                 /* Démarre la session et enregistre le pseudo dans la variable de session $_SESSION['login']
                 qui donne au visiteur la possibilité de se connecter.  */
     

                 // A MODIFIER Remplacer le '#' par l'adresse de votre page de destination, sinon ce lien indique la page actuelle.
                 $message = 'Votre inscription est enregistrée. <a href = "page1.php">Cliquez ici pour vous connecter</a>';
             }    

 else
 {
	 echo "manque données";
 }
 echo "$message";
 }

 
?>
<form action="#" name="forum" method="post">
Titre : <input type="text" name="titre" />
<textarea rows="6" cols="30" name="texte"> Vorte message ici </textarea>
<input type="file" name="file">
<input type="hidden" value="<?php  echo $login ?>" name="auteur"/>
<input type="submit" value="poster" />
<form>

Re: probleme pour inclure le nom de l'auteur d'un message

Posté : 01 nov. 2010, 16:40
par moogli
Bonjour et merci ne sont pas des options (oui tu a d'autres message du jour mais les gens ne les ont as forcement lu et un merci c'est a chaque fois ;) )

Pense a utiliser le bbcode
 pour la colorisation de la syntaxe c'est plus facile a lire. 

D'ou sort la variable $login que tu affiche dans l'input auteur ?
A tu regarder le source html du formulaire pour voir si le champ est bien remplis ?
Affiche $_POST['auteur'] pour savoir ce qu'il y a dedans. Affiche la requete aussi etc

Pour prendre les devants : ton champ de type file n'est pas traité ne t'attend pas a avoir le fichier dans ta base de données. (cherche upload de fichier)

@+

Re: probleme pour inclure le nom de l'auteur d'un message

Posté : 01 nov. 2010, 16:43
par damaskinos
Avant Tout Bonjour,

Remplace la ligne
<input type="hidden" value="<?php  echo $login ?>" name="auteur"/>
par
<input type="hidden" value="<?php  echo $login; ?>" name="auteur"/>
J'Ai juste rajouté un point virgule après la variable $login. Assure toi que ta gestion d'erreur est à strict.

Ensuite avant tes isset, rajoute
var_dump($_POST)
et vérifie si
$_POST['auteur']
est renseigné

Re: probleme pour inclure le nom de l'auteur d'un message

Posté : 01 nov. 2010, 17:48
par Shim
Merci pour votre aide et come je l'ai oublié en debut de post je vous en donne 2 :
bonjour bonjour.

La solution
$auteur= ($_SESSION['login']);
 
?>
<form action="#" name="forum" method="post">
Titre : <input type="text" name="titre" />
<textarea rows="6" cols="30" name="texte"> Vorte message ici </textarea>
<input type="file" name="file">

<input type="hidden" name="auteur" value="<?php echo $auteur; ?>"/>
Pourquoi var dump ??? ca marche sans

Re: probleme pour inclure le nom de l'auteur d'un message

Posté : 01 nov. 2010, 17:57
par moogli
var_dump permet de connaitre le contenu d'une variable, c'est très pratique pour debugguer.

je t'invite a lire la doc des fonctions que tu ne connais pas=> http://www.php.net/var_dump

@+