Help Php

snow.alex Messages postés 159 Statut Membre -  
Alain_42 Messages postés 5413 Statut Membre -
Bonjour à tous,

Je ne comprends pas, mon extrait de code ;

$reponse_cores = mysql_query("SELECT * FROM ". PREFIX ."membres WHERE passe=" .echo md5(test1). " AND pseudo=.test1. ") or die ('Erreur, impossible de vérifier la correspondance pseudo/mot de passe.');

N'est pas juste !

Je pense que sa vient de :

passe=" .echo md5(test1). "

Mais je ne suis pas sur :x
Je vous rappelle que c'est juste un extrait de code, et ma page m'affiche :

Parse error: syntax error, unexpected T_ECHO in /home/.nfs8/XXX/www/0132/12.php on line 25

Aidez moi s'il vous plait ^-^
Configuration: Windows XP
Firefox 3.0.4

9 réponses

  1. hamzafes Messages postés 258 Statut Membre 54
     
    je croix qu'il manque déjà quelques dollars
    et le fonction echo sert à afficher du texte et non pas pour concataner
    0
  2. snow.alex Messages postés 159 Statut Membre 11
     
    Alors comment je fais ?

    Help :(
    0
  3. Utilisateur anonyme
     
    essai comme ça :

    
    $test1="test1";
    $PREFIX="prefix";
    $pass=md5($test1);
    
    $reponse_cores = mysql_query("SELECT * FROM $PREFIX_membres WHERE passe='$pass' AND pseudo='$test1' ") or die ('Erreur, impossible de vérifier la correspondance pseudo/mot de passe.'); 
    
    0
  4. snow.alex Messages postés 159 Statut Membre 11
     
    Merci, sa marche pour le premier, mais j'ai un deuxieme pb

    Comment l'inclure de la même facon dans :

    mysql_query("UPDATE ". PREFIX ."membres SET identifiant='$alea' WHERE passe='passe' AND pseudo='pseudo' ". ") or die ('Erreur, impossible de modifier l\'enregistrement.');

    Merci
    0
    1. giheller
       
      bonjour,

      même chose les noms des variables commencent par $
      ensuite PREFIX ????

      0
  5. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  6. Utilisateur anonyme
     
    tu fai comme pour le premier :

    $pass="passe";
    $PREFIX="prefix";
    $pseudo="pseudo";

    mysql_query("UPDATE $PREFIX_membres SET identifiant='$alea' WHERE passe='$pass' AND pseudo='$pseudo' ") or die ('Erreur, impossible de modifier l\'enregistrement.');
    0
  7. snow.alex Messages postés 159 Statut Membre 11
     
    Warning: mysql_query() [function.mysql-query]: Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (2) in /home/.nfs8/habbgame/www/0132/12.php on line 16

    Warning: mysql_query() [function.mysql-query]: A link to the server could not be established in /home/.nfs8/habbgame/www/0132/12.php on line 16
    Erreur, impossible de vérifier la correspondance pseudo/mot de passe.

    Why ?
    0
  8. Utilisateur anonyme
     
    tes identifiants de connection a mysql ne doivent pas etre bon
    0
  9. snow.alex Messages postés 159 Statut Membre 11
     
    Pourtant si j'ai bien vérifié.
    Bon, attends, je t'envoi le code en entier :

    <?php

    session_start();

    include_once 'recup_config.php'; //On récupère la configuration du script
    require_once 'fonctions/formulaires.php';

    $pseudo="test1";
    $PREFIX="espm";
    $passe=md5($test1);

    $reponse_cores = mysql_query("SELECT * FROM $PREFIX_membres WHERE passe='$passe' AND pseudo='$pseudo' ") or die ('Erreur, impossible de vérifier la correspondance pseudo/mot de passe.');
    $count_cores = mysql_num_rows($reponse_cores);
    if($count_cores === 1)
    {

    $verification_statut = mysql_fetch_array($reponse_cores);

    if($verification_statut['valide'] == 0)
    header('Location:index.php?erreur=valide'); //Si le mail n'a pas été validé

    elseif($verification_statut['valide'] == 2)
    header('Location:index.php?erreur=suspendu'); //on vérifie la correspondance

    else
    {
    $alea = id_aleatoire(); //Création d'un identifiant aléatoire

    mysql_query("UPDATE $PREFIX_membres SET identifiant='$alea' WHERE passe='$passe' AND pseudo='$pseudo' ") or die ('Erreur, impossible de modifier l\'enregistrement.');

    $_SESSION['session'] = $alea; //création de la session

    header('Location:index.php'); //redirection vers l'index
    }
    }

    else
    header('Location:index.php?erreur=couple'); //Si le nombre de correspondances n'est pas égal à 1, on renvoi vers la page d'accueil

    mysql_close();

    include_once 'bas.php';
    ?>
    0
  10. snow.alex Messages postés 159 Statut Membre 11
     
    Up
    0
    1. giheller
       
      bonsoir,
      dans le code où est la connexion à la base ?
      --
      0
    2. Alain_42 Messages postés 5413 Statut Membre 904
       
      Bonsoir,

      ça ne peut pas marcher:

      $pseudo="test1";
      $PREFIX="espm";
      $passe=md5($test1);

      $reponse_cores = mysql_query("SELECT * FROM $PREFIX_membres WHERE passe='$passe' AND pseudo='$pseudo' ") or die ('Erreur, impossible de vérifier la correspondance pseudo/mot de passe.');


      la requette va porter sur la table correspondante à la valeur de la variable $PREFIX_membres hors cette variable n'éxiste pas

      je pense que tu veux avoir un nom de table composée d'un prefixe $PREFIX et de_membres

      alors il faut ${$PREFIX.'_membres'} pour faire une variable dynamique (c'est une des solutions !)

      ce qui donne comme requête:

      $pseudo="test1";
      $PREFIX="espm";
      $passe=md5($test1);
      
      $reponse_cores = mysql_query("SELECT * FROM ${$PREFIX.'_membres'} WHERE passe='$passe' AND pseudo='$pseudo' ") or die ('Erreur dans la requette '.mysql_error());</ital>
      0