svp une aide très vite j'ai besoin de vous

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 : svp une aide très vite j'ai besoin de vous

Re: svp une aide très vite j'ai besoin de vous

par xTG » 24 mai 2012, 08:02

xtg, dessine-moi une jointure, s'il te plait!!!
Je ne déconne pas complètement: quand vous parlez de jointure vous palez à un sourd.
On lui a donné toutes les explications et liens nécessaires pour résoudre son problème.
Après s'il n'a pas envie d'exploiter ce qu'on lui fourni c'est son problème pas le notre.

Re: svp une aide très vite j'ai besoin de vous

par sirakawa » 23 mai 2012, 22:42

xtg, dessine-moi une jointure, s'il te plait!!!
Je ne déconne pas complètement: quand vous parlez de jointure vous palez à un sourd.

Re: svp une aide très vite j'ai besoin de vous

par xTG » 23 mai 2012, 19:21

Ta table commentaire ne contient visiblement aucun champ (cf ta requête insert) pouvant faire le lien avec un quelconque article.
Donc j'ai envie de dire... Tu as programmé ce que tu as comme résultat.

Comme précédemment dit il faut une jointure entre les deux tables !
Donc deux champs en relation, généralement la clé primaire de la table article que l'on stocke pour chaque commentaire afin de savoir à quel article appartient le commentaire.

Re: svp une aide très vite j'ai besoin de vous

par minou10 » 23 mai 2012, 18:03

Ta façon de traiter un formulaire est desuette (auto déclaration des variable issues de formulaire).
=> http://www.lephpfacile.com/cours/

Tu inclus deux fichiers config.pho c'est sources d'erreur.

Quel est le niveau de report d'erreur ?

@+
BONJOUR,

en fait j'ai pas d'erreur mais mon problème c'est que a chaque fois que j'ajoute un commentaire il s'affiche pour touts les articles
par exemple j'ai ajouté article A B et C
le commentaire s'affiche pour A B et C moi je veux que chaque article sera indépendant de ses commentaires

Re: svp une aide très vite j'ai besoin de vous

par Mazarini » 21 mai 2012, 13:41

Lorsque l'on veut une solution rapide : extract() peut être utilisé en début de script. Ca laisse les failles de sécurité en l'état.

Dans le cas contraire, il faut se palucher tous les $var = $_GET['var'] ou $var = $_POST['var']. En général, c'est par la récupération des variables que je commence mes scripts.

Re: svp une aide très vite j'ai besoin de vous

par moogli » 21 mai 2012, 12:52

surement, y a pas mal de tuto pas jour malheureusement.

Ajout a ça les hébergeurs qui n'évolue pour pas être emmerdé :)


@+

Merci moogli

par sirakawa » 21 mai 2012, 12:22

Je savais pour register globals, puisque quand j'ai débuté en Php, on faisait ça; ca m'a fait pas mal de modules à modifier, mais depuis j'ai complètement oublié.
Une pareille situation suppose que le script soumis est la reprise d'un archaïque script trouvé dieu sait où.

Re: svp une aide très vite j'ai besoin de vous

par moogli » 21 mai 2012, 09:13

=> register_globals à OFF est la configuration par défaut de php. Ce n'était pas le cas avant (d'ou le désuet).

exemple
<form action="" method="post">
<input type="text" name="duText" />
<input type="submit" name="lesubmit" />
</form>
Avec register globals à on tu peux utiliser directement $duText et $lesubmit.

Avec register globals à off tu utilise $_POST['duText'] et $_POST['lesubmit']

et un p'tit article sur le sujet Variables auto-déclarées : Pourquoi c'est mal ? :mrgreen: 3


@+

Re: svp une aide très vite j'ai besoin de vous

par sirakawa » 21 mai 2012, 08:59

Moogli, pour ma gouverne, peux-tu m'expliquer
auto déclaration des variable issues de formulaire
@+
?

Re: svp une aide très vite j'ai besoin de vous

par moogli » 21 mai 2012, 08:29

Ta façon de traiter un formulaire est desuette (auto déclaration des variable issues de formulaire).
=> http://www.lephpfacile.com/cours/

Tu inclus deux fichiers config.pho c'est sources d'erreur.

Quel est le niveau de report d'erreur ?

@+

Re: svp une aide très vite j'ai besoin de vous

par minou10 » 20 mai 2012, 22:49

voila de add.php
<?php 
session_start();
header('Content-type: text/html; charset=utf-8');
include('../includes/config.php');

?>
<?

include('config.php');

$date = date(d)."-".date(m)."-".date(Y);
if(empty($pseudo) OR empty($commentaire))
  {
   echo "<center><font color=\"black\" face=\"verdana\" size=\"2\">Attention, seul le champ e-mail peut rester vide !</font></center>";
  }
else
  {
$db = mysql_connect($host,$login,$pass);
mysql_select_db($base,$db);

mysql_query("INSERT INTO comment VALUES('','$pseudo','$mail','$commentaire','$date')");
mysql_close();      }
echo "<META HTTP-EQUIV='Refresh' CONTENT='0; URL=comment.php'>";

?>

Re: svp une aide très vite j'ai besoin de vous

par sirakawa » 20 mai 2012, 19:31

Il faudrait aussi le code de add.php

Re: svp une aide très vite j'ai besoin de vous

par minou10 » 20 mai 2012, 17:00

voila mon code :
<SCRIPT LANGUAGE='JAVASCRIPT' TYPE='TEXT/JAVASCRIPT'>

var win=null;
function NewWindow(mypage,myname,w,h,pos,infocus){
if(pos=="random"){myleft=(screen.width)?Math.floor(Math.random()*(screen.width-w)):100;mytop=(screen.height)?Math.floor(Math.random()*((screen.height-h)-75)):100;}
if(pos=="center"){myleft=(screen.width)?(screen.width-w)/2:100;mytop=(screen.height)?(screen.height-h)/2:100;}
else if((pos!='center' && pos!="random") || pos==null){myleft=0;mytop=20}
settings="width=" + w + ",height=" + h + ",top=" + mytop + ",left=" + myleft + ",scrollbars=yes,location=no,directories=no,status=,menubar=no,toolbar=no,resizable=no";win=window.open(mypage,myname,settings);
win.focus();}

</script>

<?php 
session_start();
header('Content-type: text/html; charset=utf-8');
include('../includes/configg.php');
?>
<? include('configg.php'); ?>
<html>
<head>
<title>Commentaire</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>

<body>

<table width="220" border="1" cellpadding="0" cellspacing="1" bordercolordark="#0066FF">
  <!--DWLayoutTable-->
  <tr> 
    <td width="356" height="287" valign="top"><div align="center"> 
        <p><font size="1" face="Verdana, Arial, Helvetica, sans-serif">:: Commentaire ::</font></p>
        <p><font color="#0066FF">&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;</font> 
          <?
$db = mysql_connect($host,$login,$pass);
mysql_select_db($base,$db);
$req = mysql_query("SELECT * FROM comment");
$res = mysql_numrows($req);

echo "<font face=verdana size=1>Il y a actuellement <b>$res</b> commentaire</font>";

mysql_close();
?>
        </p>
        <p><br>
          <?
		  
$db = mysql_connect($host,$login,$pass);
mysql_select_db($base,$db);
$req = mysql_query("SELECT * FROM comment ORDER BY id DESC");
$res = mysql_numrows($req);

$i=0;
WHILE($res!=$i)
  {
   $pseudo = mysql_result($req,$i,"pseudo");
   $date = mysql_result($req,$i,"date");
   $commentaire = mysql_result($req,$i,"commentaire");
   $mail = mysql_result($req,$i,"mail");
if($mail=='')
{
    print"<p align=left><font face=verdana size=1>Le <b>$date</b> par <b>$pseudo</b><br><br><i>$commentaire</i></font></p>";
}
else
{
    print"<p align=left><font face=verdana size=1>Le <b>$date</b> par <a href=mailto:$mail><b>$pseudo</b></a><br><br><i>$commentaire</i></font></p>";
}
   $i++;
  }
mysql_close();
?>
        </p>
        <p><font color="#0066FF">&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;</font></p>
        <form method="post" action="add.php">
          <table width="356" border="0" cellspacing="0" cellpadding="0" align="center">
            <!--DWLayoutTable-->
            <tr> 
              <td width="126" height="22" valign="top"><font size="1" face="Verdana"><u>Votre 
                pseudo :</u></font></td>
              <td colspan="2" valign="top"> <input type="text" class=text name="pseudo"> 
              </td>
              <td width="2">&nbsp;</td>
              <td width="19">&nbsp;</td>
            </tr>
            <tr> 
              <td height="23" colspan="2" valign="top"><font size="1" face="Verdana"><u><em>Votre 
                e-mail :</em></u></font></td>
              <td colspan="2" valign="top"> <input type="text" class=text name="mail"> 
              </td>
              <td>&nbsp;</td>
            </tr>
            <tr> 
              <td height="70" colspan="2" valign="top"><font size="1" face="Verdana"><u>Commentaire 
                :</u></font></td>
              <td colspan="2" valign="top"> <textarea name="commentaire" cols="18" rows="3"></textarea> 
              </td>
              <td>&nbsp;</td>
            </tr>
            <tr> 
              <td height="24" colspan="5" valign="top"> <div align="center"> 
                  <input type="submit" class=bouton name="Submit" value="Ok">
                </div></td>
            </tr>
            <tr> 
              <td height="19">&nbsp;</td>
              <td width="1">&nbsp;</td>
              <td width="208">&nbsp;</td>
              <td>&nbsp;</td>
              <td>&nbsp;</td>
            </tr>
          </table>
        </form>
        
  </tr>
</table>
</body>
</html>

Re: svp une aide très vite j'ai besoin de vous

par xTG » 20 mai 2012, 09:18

Donc c'est ta jointure qui n'est pas bonne.
Montres nous ton code.

Re: svp une aide très vite j'ai besoin de vous

par Minou100 » 20 mai 2012, 02:56

oui je comprends bien sur
juste j'ai deja crée et j'ai tout fait sa marche très bien mon probléme c'est que mon commentaire s'affiche tjr le meme commentaire que j'ai fais sur tout les enregistrements
donc moi j'ajoute un commentaire pour un enregistrement A mais il s'affiche pour les autres enregistrements B et C et D
moi je pose une question simple mais n'essayez pas d'etre prooo et prendre mes messages et...!!!