Probleme de création d'une page d'inscription en PHP

Résolu
Kévin -  
Balou l'ours roux Messages postés 122 Statut Membre -
Bonjour/ Bonsoir,

après avoir créé mon espace membre, j'avais envie de lui ajouter une page d'inscription ( j'aurais du le faire avant certes ), mais j'ai une "erreur fatal" dans mes codes, mais je ne vois pas ou.

Voici les codes de la page :

<html>
<head>
<title> Titre </title>
</head>
<body>
<?php
if($_POST('conf_pass') != '' and $_POST('login') != '' and $_POST('pass') != '' and $_POST('mail') != '')
{
	if($_POST['pass'] == $_POST['conf_pass'])
	{

$base = mysql_connect('localhost', 'root', '');
mysql_select_db('membres', $base);

$req = 'INSERT INTO membres (id, login, pass, mail) VALUES ("", "'.mysql_escape_string($_POST['login']).'") ' ;

	}
}
?>
</body>
</html>


l'erreur dite est :
Fatal error: Function name must be a string in C:\Program Files (x86)\EasyPHP-12.1\www\inscription_suite.php on line 7

Avez vous une idée d'ou peut venir l'erreur PHP ?

Merci d'avance,

Kévin

4 réponses

  1. Balou l'ours roux Messages postés 122 Statut Membre 12
     
    Bonjour/Bonsoir,

    Essaye ce code :

    <?php
    session_start() ;
    ?>
    <html>
    <head>
    <title> Titre </title>
    </head>
    <body>
    <?php
    if($_POST['conf_pass'] != '' && $_POST['login'] != '' && $_POST['pass'] != '' && $_POST['mail'] != '')
    {
    	if($_POST['pass'] == $_POST['conf_pass'])
    	{
    		
    $base = mysql_connect('localhost', 'root', '');
    mysql_select_db('Espace_Membres', $base) or die (mysql_error());
    $req = ' Select * FROM membres where login="'.mysql_real_escape_string($_POST['login']).'" '; 
    $query = mysql_query($req)  or die (mysql_error());
    $login_existe = false;
    while($donnees = mysql_fetch_array($query))
    {
    	$login_existe = true;
    	
    }
    if($login_existe == true)
    {
    	header('location:inscription.php?err=3');
    }
    $req = ' Select * FROM membres where mail="'.mysql_real_escape_string($_POST['mail']).'" '; 
    $query = mysql_query($req) or die (mysql_error());
    $mail_existe = false;
    
    while($donnees = mysql_fetch_array($query))
    {
    	$mail_existe = true;
    	
    }
    
    if($mail_existe == true)
    {
    	header('location:inscription.php?err=4');
    }
    
    mysql_close();
    
    
    
    
    $base = mysql_connect('localhost', 'root', '');
    mysql_select_db('Espace_Membres', $base);
    
    $req = 'INSERT INTO membres (id, login, pass, mail) VALUES ("", "'.mysql_real_escape_string($_POST['login']).'","'.mysql_real_escape_string($_POST['pass']).'", "'.mysql_real_escape_string($_POST['mail']).'") ' ;
    mysql_query($req);
    mysql_close();
    echo (' Merci de vous être enregisté ');
    }
    else
    {
    header('location:inscription.php?err=2');
    }
    }
    else
    {
    header('location:inscription.php?err=1');
    }
    ?>
    </body>
    </html>
    1
    1. Kévin
       
      Merci
      0
    2. Balou l'ours roux Messages postés 122 Statut Membre 12
       
      De rien :)
      0
  2. lodulac Messages postés 6 Date d'inscription   Statut Membre Dernière intervention   2
     
    Bonjour,

    Si j'exécute la ligne 7 en php, je ne reçoit pas d'erreur.
    Pourrait tu copier/coller ton code sur un outils tel que Gist (https://gist.github.com/discover

    Sinon, à ta place, j'utiliserait plutôt l'opérateur "&&" que "and" pour des questions de conventions dans le monde du développement php (je ne pensait même pas que "and" était supporté !)

    bon courage
    0
  3. Kévin
     
    Bonjour / Bonsoir,

    J'ai résolu mon premier problème tout seul, mais j'en ai un autre.

    voici mes codes nouveaux codes :

    <?php
    session_start() ;
    
    ?>
    <html>
    <head>
    <title> Titre </title>
    </head>
    <body>
    <?php
    if($_POST['conf_pass'] != '' && $_POST['login'] != '' && $_POST['pass'] != '' && $_POST['mail'] != '')
    {
    	if($_POST['pass'] == $_POST['conf_pass'])
    	{
    		
    		$base = mysql_connect('localhost', 'root', '');
    mysql_select_db('membres', $base);
    $req = ' Select * Into membres where login="'.mysql_real_escape_string($_POST['login']).'" '; 
    $query = mysql_query($req);
    $login_existe = false;
    
    while($donnees == mysql_fetch_array($query))
    {
    	$login_existe = true;
    	
    }
    if($pseudo_existe == true)
    {
    	header('location:inscription.php?err=3');
    }
    $req = ' Select * Into membres where login="'.mysql_real_escape_string($_POST['mail']).'" '; 
    $query = mysql_query($req);
    $mail_existe = false;
    
    while($donnees == mysql_fetch_array($query))
    {
    	$mail_existe = true;
    	
    }
    
    if($mail_existe == true)
    {
    	header('location:inscription.php?err=4');
    }
    
    mysql_close();
    
    
    
    
    $base = mysql_connect('localhost', 'root', '');
    mysql_select_db('membres', $base);
    
    $req = 'INSERT INTO membres (id, login, pass, mail) VALUES ("", "'.mysql_real_escape_string($_POST['login']).'","'.mysql_real_escape_string(md5$_POST['pass']).'", "'.mysql_real_escape_string($_POST['mail']).'") ' ;
    echo = (' Merci de vous être enregisté ')
    	}
    	Else
    	{
    		header('location:inscription.php?err=2');
    	}
    }
    ?>
    </body>
    </html>


    Message d'erreur : Parse error: syntax error, unexpected '$_POST' (T_VARIABLE) in C:\Program Files (x86)\EasyPHP-12.1\www\inscription_suite.php on line 54

    Ps : Je n'ai pas pu mettre mes codes sur un outil, désolé.

    Merci d'avance.
    0
  4. Kévin
     
    J'enchaine les probleme, j'ai reussi a résoudre le probleme de la ligne 54, mais j'en ai un autre a la ligne 22, j'ai un flood de ces messsages :
    Warning: mysql_fetch_array() expects parameter 1 to be resource, boolean given in C:\Program Files (x86)\EasyPHP-12.1\www\inscription_suite.php on line 22

    Notice: Undefined variable: donnees in C:\Program Files (x86)\EasyPHP-12.1\www\inscription_suite.php on line 22

    les nouveaux codes :

    <?php
    session_start() ;
    
    ?>
    <html>
    <head>
    <title> Titre </title>
    </head>
    <body>
    <?php
    if($_POST['conf_pass'] != '' && $_POST['login'] != '' && $_POST['pass'] != '' && $_POST['mail'] != '')
    {
    	if($_POST['pass'] == $_POST['conf_pass'])
    	{
    		
    		$base = mysql_connect('localhost', 'root', '');
    mysql_select_db('membres', $base);
    $req = ' Select * Into membres where login="'.mysql_real_escape_string($_POST['login']).'" '; 
    $query = mysql_query($req);
    $login_existe = false;
    
    while($donnees == mysql_fetch_array($query))
    {
    	$login_existe = true;
    	
    }
    if($pseudo_existe == true)
    {
    	header('location:inscription.php?err=3');
    }
    $req = ' Select * Into membres where login="'.mysql_real_escape_string($_POST['mail']).'" '; 
    $query = mysql_query($req);
    $mail_existe = false;
    
    while($donnees == mysql_fetch_array($query))
    {
    	$mail_existe = true;
    	
    }
    
    if($mail_existe == true)
    {
    	header('location:inscription.php?err=4');
    }
    
    mysql_close();
    
    
    
    
    $base = mysql_connect('localhost', 'root', '');
    mysql_select_db('membres', $base);
    
    $req = 'INSERT INTO membres (id, login, pass, mail) VALUES ("", "'.mysql_real_escape_string($_POST['login']).'","'.mysql_real_escape_string(md5($_POST['pass'])).'", "'.mysql_real_escape_string($_POST['mail']).'") ' ;
    echo (' Merci de vous être enregisté ');
    	}
    	Else
    	{
    		header('location:inscription.php?err=2');
    	}
    }
    ?>
    </body>
    </html>


    Lien Gist :
    https://gist.github.com/anonymous/809ace0831d621a91e65
    0