creer des sessions utilisateurs

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 : creer des sessions utilisateurs

par castelli » 30 sept. 2005, 19:45

humm

Comme l'on dit il suffit generalement de reflechir pour comprendre son erreur et miracle mon cerveau vient de se mettre en marche :)

J'ais compris ce qui n'allait pas en faite dans cette requete:

SELECT * FROM util WHERE user_name='iphicrate' AND password='castelli'

c'est qu'en faite dans ma base de donnée user_name = pseudo

(vu que c'est un tuto j'ais pas tout changer )

je m'escuze d'avoir deranger tout le monde et merci :)

lol :lol:

par Cyrano » 30 sept. 2005, 19:38

Copie ta requête et vas ensuite sur phpMyAdmin de free.fr, loggue toi et essaye directement ta requête générée dans phpMyAdmin

par castelli » 30 sept. 2005, 19:35

J'ai essaillez pour l'extension php5 (jais mis le fichier verif.php5 et la fonction verification en php5 )
Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource in /var/www/free.fr/9/3/felofastouf/verification.php5 on line 19
sinon l'echo me donne la bonne chose enfin il me semble
SELECT * FROM util WHERE user_name='iphicrate' AND password='castelli'
ps : le resultat devrait etre bon mais il me retourne qu'il est faut (jai verifier le pseudo et le passe dans la bdd pr etre sur : /

par jeff » 30 sept. 2005, 19:31

je suis pas sur que ta requete soit valide fait en un echo
 $sql ='SELECT * FROM util ';
        $sql.= ' WHERE user_name="'.$nom_sql.'" AND password="'.$pass_sql.'"';

par Cyrano » 30 sept. 2005, 19:28

Je l'ai mentionné pourtant deux fois : il faut une extension de fichier ".php5" : si tu mets ".php" tout court, ce sera PHP4.

par castelli » 30 sept. 2005, 19:27

C'est bon j'ais creer le repertoire a la racine et sa ma supprimer la plus part de mes erreures , il m'en reste seulement une

Code : Tout sélectionner

Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource in /var/www/free.fr/9/3/felofastouf/verification.php on line 19
la ligne 19 correspond au if de la fin
function verification($nom,$pass){ 
  // Connexion SQL 
  $dbhote = ******;
  $dbuser = '*****';
  $dbpass = **';
  $dbbase = '******;
  $link = mysql_connect($dbhote,$dbuser,$dbpass); 
  mysql_select_db($dbbase,$link); 

  // Création de la requête SQL 
  $nom_sql = mysql_real_escape_string($nom) ; 
  $pass_sql = mysql_real_escape_string($pass) ; 
  $sql ="SELECT * FROM util "
        . " WHERE user_name='$nom_sql' AND password='$pass_sql'" ; 

  // Exécution de la requête SQL
  $result = mysql_query($sql,$link); 
  if(mysql_num_rows($result)>0){ 
    return TRUE;
  }else{ 
  return FALSE; 
  } 
} 
sinon j'ais essailler mettre la page en php5 et sa a rien changer
:)

par jeff » 30 sept. 2005, 19:26

y a pas de probleme avec ton lien mais phpinfo devrai me l'indiqué non???

par Cyrano » 30 sept. 2005, 19:24

Tiens, regarde toi-même :)
Observe l'extension de fichier par exemple, c'est important.

par jeff » 30 sept. 2005, 19:21

chez free on a php5 j'ai lancer un phpinfo et il m'a indiquer php4.3.3 hier
:?: :?:

par Cyrano » 30 sept. 2005, 19:18

Deux choses : ton problème de session chez free est normal: crée à la racine de ton site un répertoire vide nommé "sessions", c'est tout

La seconde chose, PHP5 fonctionne chez free, mais il faut des extension de fichier .php5 : illustration

par jeff » 30 sept. 2005, 19:16

bon vu que tu est chez free a tu cree un dossier sessions a la racine de domane web??

creer des sessions utilisateurs

par castelli » 30 sept. 2005, 19:12

Bonjour tout le monde, (enfin tous ceu que j'ai pas deja embeter aujourd'hui :) lol )

Ne connaissant guere de chose sur les sessions , j'ais trouver un tutoriels en ligne et je l'ais suivit afin d'apprendre mais je suis tombé sur un petit probleme.

En effet le tutoriels est fait a partir de php5 et moi etant chez free je crois que je suis en php 4 nan??

Dons quand je lance mes pages je tombe sur des erreures ..

Voici le code de la page verif.php et les erreures qui s'y reporte

<?php 
// initialisation de la session 
session_start() ; 

// si on a reçu les données d'un formulaire : 
if ( isset( $_POST['pseudo'] ) && isset( $_POST['motdepasse'] ) ) { 

  // on les récupère 
  $nom = $_POST['pseudo'] ; 
  $motdepasse = $_POST['motdepasse'] ;

  Require("verification.php");


  // on teste si le mot de passe est valide : 
  if ( verification( $nom, $motdepasse ) ) { 

    // on sauvegarde donc son nom dans la session 
    $_SESSION['nom'] = $nom ; 
    $message = 'vous êtes correctement identifié' ;
  } else {
    // sinon on avertit l'utilisateur : 
    $message = 'Mauvais mot de passe' ; 
    $message .='<a href="auth.php">retour</a>' ; 
  } 
} else { 
  // un des champs n'est pas rempli 
  $message = 'le login ou le mot de passe est vide' ; 
  $message .='<a href="auth.php">retour</a>' ; 
} 
?>
<html>
<head><title>Identification</title></head>
<body><p>
<?php echo $message ?>
</p></body> 
</html>
la fonction verrification ()
<?php 
function verification($nom,$pass){ 
  // Connexion SQL 
  $dbhote = 'sql.free.fr';
  $dbuser = '********';
  $dbpass = '*****';
  $dbbase = '********';
  $link = mysql_connect($dbhote,$dbuser,$dbpass); 
  mysql_select_db($dbbase,$link); 

  // Création de la requête SQL 
  $nom_sql = mysql_real_escape_string($nom) ; 
  $pass_sql = mysql_real_escape_string($pass) ; 
  $sql ="SELECT * FROM util "
        . " WHERE user_name='$nom_sql' AND password='$pass_sql'" ; 

  // Exécution de la requête SQL
  $result = mysql_query($sql,$link); 
  if(mysql_num_rows($result)>0){ 
    return TRUE; 
  }else{ 
  return FALSE; 
  } 
} 
?>
et les erreures qui s'y reportent

Code : Tout sélectionner

Warning: session_start(): open(/var/www/free.fr/9/3/felofastouf/sessions/sess_51c92a4b23776128e1dfb2e4ed22e962, O_RDWR) failed: No such file or directory (2) in /var/www/free.fr/9/3/felofastouf/verif.php on line 3 Warning: session_start(): Cannot send session cookie - headers already sent by (output started at /var/www/free.fr/9/3/felofastouf/verif.php:3) in /var/www/free.fr/9/3/felofastouf/verif.php on line 3 Warning: session_start(): Cannot send session cache limiter - headers already sent (output started at /var/www/free.fr/9/3/felofastouf/verif.php:3) in /var/www/free.fr/9/3/felofastouf/verif.php on line 3 Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource in /var/www/free.fr/9/3/felofastouf/verification.php on line 19 Mauvais mot de passeretour Warning: Unknown(): open(/var/www/free.fr/9/3/felofastouf/sessions/sess_51c92a4b23776128e1dfb2e4ed22e962, O_RDWR) failed: No such file or directory (2) in Unknown on line 0 Warning: Unknown(): Failed to write session data (files). Please verify that the current setting of session.save_path is correct (/var/www/free.fr/9/3/felofastouf/sessions) in Unknown on line 0
[/php]

En gros si quelqun peut bien me confirmer que free est en php 4...

et sinon bah si vous pouviez m'aider , je serais pas contre