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

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : probleme pour inclure le nom de l'auteur d'un message

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

par moogli » 01 nov. 2010, 17:57

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

@+

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

par Shim » 01 nov. 2010, 17:48

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

par damaskinos » 01 nov. 2010, 16:43

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

par moogli » 01 nov. 2010, 16:40

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)

@+

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

par Shim » 01 nov. 2010, 16:27

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>