Question PHP, version EasyPHP1-7

France -  
Zep3k!GnO Messages postés 2049 Statut Membre -
Bonjour à tous,

J'aimerai comprendre
J'ai écrit le script ci-dessous à mon école et il fonctionnait très bien. Quand j'ai voulu l'utiliser chez moi (même version EasyPHP1-7, même site) il m'affichait tout et n'importe quoi...
Le but de ce script: pouvoir afficher une liste du nom de produit suite à un formulaire, dont la variable peut être les deux ou trois premiers charactères de mon produit et *. Par exemple je veux qu'il m'affiche tous les produits qui commencent par 'em*'

C'est assez urgent, je vous remercie d'avance de votre aide

le script:
$data1=$data;
$x="*";
if (strpos($data, $x)>0)
{
$data1=substr ($data,0, strlen($data)-1).'%';
}
$requete=mysql_query("SELECT * FROM datasheets WHERE name LIKE '$data1'",$con);
$res_requete=mysql_fetch_row($requete);
echo "<table align=center width=50% border=1>\n";
//recuperation des resultats
$nom=mysql_num_rows ($requete);
echo "<tr>\n
<td class=tabletitle>Name</td>\n
<td class=tabletitle>File</td>\n
</tr>\n";
if ($nom==0)
{
echo "No items correspond to your request<br><br>\n";
}
else
{
$i=0;
while ($i<$nom)
{
echo "<tr>\n
<td class=tabletext>$res_requete[0]</td>\n
<td align=center><a href=\"$res_requete[2]\"><img src=\"$res_requete[1]\" width=\"20\" height=\"22\"></a></td>\n
</tr>\n";
$i++;
}
}
echo "</table>";

2 réponses

  1. Willy
     
    Tot a l'air normal. Cepenadant j'ai une question pour toi .
    A la ligne 1 de ton script, tu as
    $data1=$data;

    La variable "data" provient elle d'une autre page ?
    Quelle méthode a tu utilisé pour la transmission ?
    Formulaire dans la première page ? Ds ce cas au lieu de $data tu devrai prendre :
    $data1 = $_GET['data'] // Si ta méthode de formulaire est GET

    ou

    $data1 = $_POST['data'] // Si ta méthode de formulaire est POST

    Sio tu as fait la transmission par URL utilise

    $data1 = $_GET['data']

    Solution extrème:

    vas dans le fichier de configuration de PHP et met la variable

    register_globals = On

    et tu redemarrage le serveur WEB
    Cette dernière solution n'est pas bonne parkelle occasionne des trous de sécurité. Ce ne sera d'ailleurs plus possible ds les prochaines versions de PHP

    Allez bonne chance
    0
    1. Zep3k!GnO Messages postés 2049 Statut Membre 200
       
      Tout a fait d'accord avec toi mec ;P

      Zep3k!GnO
      -->hi i hi o on va pas au boulot :P
      0
  2. wiwimagique Messages postés 481 Statut Membre 108
     
    j'aime bien la date du post :-DDDD

    0