Probleme avec un PHP
THEPIXADE
Messages postés
25
Date d'inscription
Statut
Membre
Dernière intervention
-
THEPIXADE Messages postés 25 Date d'inscription Statut Membre Dernière intervention -
THEPIXADE Messages postés 25 Date d'inscription Statut Membre Dernière intervention -
Bonjour
Je sais que mon probleme sa vien de connection mais je doit mettre quoi ou ?
Warning: session_start() [function.session-start]: Cannot send session cookie - headers already sent by (output started at /home/obsimine/public_html/login.php:7) in /home/obsimine/public_html/login.php on line 7
Warning: session_start() [function.session-start]: Cannot send session cache limiter - headers already sent (output started at /home/obsimine/public_html/login.php:7) in /home/obsimine/public_html/login.php on line 7
Warning: mysql_connect() [function.mysql-connect]: Access denied for user 'root'@'localhost' (using password: NO) in /home/obsimine/public_html/login.php on line 7
Warning: mysql_select_db() [function.mysql-select-db]: Access denied for user 'obsimine'@'localhost' (using password: NO) in /home/obsimine/public_html/login.php on line 7
Warning: mysql_select_db() [function.mysql-select-db]: A link to the server could not be established in /home/obsimine/public_html/login.php on line 7
Je sais que mon probleme sa vien de connection mais je doit mettre quoi ou ?
Warning: session_start() [function.session-start]: Cannot send session cookie - headers already sent by (output started at /home/obsimine/public_html/login.php:7) in /home/obsimine/public_html/login.php on line 7
Warning: session_start() [function.session-start]: Cannot send session cache limiter - headers already sent (output started at /home/obsimine/public_html/login.php:7) in /home/obsimine/public_html/login.php on line 7
Warning: mysql_connect() [function.mysql-connect]: Access denied for user 'root'@'localhost' (using password: NO) in /home/obsimine/public_html/login.php on line 7
Warning: mysql_select_db() [function.mysql-select-db]: Access denied for user 'obsimine'@'localhost' (using password: NO) in /home/obsimine/public_html/login.php on line 7
Warning: mysql_select_db() [function.mysql-select-db]: A link to the server could not be established in /home/obsimine/public_html/login.php on line 7
A voir également:
- Probleme avec un PHP
- Easy php - Télécharger - Divers Web & Internet
- Expert php pinterest - Télécharger - Langages
- Retour a la ligne php - Forum Webmastering
- Alert php - Forum PHP
- Retour a la ligne php ✓ - Forum PHP
1 réponse
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> <title></title> </head> <body> <?php session_start(); $BDD = mysql_connect("localhost","root",""); mysql_select_db("database"); ?> <?php // On met les variables utilisé dans le code PHP à FALSE (C'est-à-dire les désactiver pour le moment). $error = FALSE; $registerOK = FALSE; // On regarde si l'utilisateur est bien passé par le module d'inscription if(isset($_POST["register"])){ // On regarde si tout les champs sont remplis, sinon, on affiche un message à l'utilisateur. if($_POST["login"] == NULL OR $_POST["pass"] == NULL OR $_POST["pass2"] == NULL){ // On met la variable $error à TRUE pour que par la suite le navigateur sache qu'il y'a une erreur à afficher. $error = TRUE; // On écrit le message à afficher : $errorMSG = "Tout les champs doivent être remplis !"; } // Sinon, si les deux mots de passes correspondent : elseif($_POST["pass"] == $_POST["pass2"]){ // On regarde si le mot de passe et le nom de compte n'est pas le même if($_POST["login"] != $_POST["pass"]){ // Si c'est bon on regarde dans la base de donnée si le nom de compte est déjà utilisé : $sql = "SELECT login FROM users WHERE login = '".$_POST["login"]."' "; $sql = mysql_query($obsimine_users); // On compte combien de valeur à pour nom de compte celui tapé par l'utilisateur. $sql = mysql_num_rows($obsimine_users); // Si $sql est égal à 0 (c'est-à-dire qu'il n'y a pas de nom de compte avec la valeur tapé par l'utilisateur if($sql == 0){ // Si tout va bien on regarde si le mot de passe n'exède pas 60 caractères. if(strlen($_POST["pass"] < 60)){ // Si tout va bien on regarde si le nom de compte n'exède pas 60 caractères. if(strlen($_POST["login"] < 60)){ // Si le nom de compte et le mot de passe sont différent : if($_POST["login"] != $_POST["pass"]){ // Si tout ce passe correctement, on peut maintenant l'inscrire dans la base de données : $sql = "INSERT INTO users (login,pass) VALUES ('".$_POST["login"]."','".$_POST["pass"]."')"; $sql = mysql_query($obsimine_users); // Si la requête s'est bien effectué : if($sql){ // On met la variable $registerOK à TRUE pour que l'inscription soit finalisé $registerOK = TRUE; // On l'affiche un message pour le dire que l'inscription c'est bien déroulé : $registerMSG = "Inscription réussie ! Vous êtes maintenant membre du site."; // On le met des variables de session pour stocker le nom de compte et le mot de passe : $_SESSION["login"] = $_POST["login"]; $_SESSION["pass"] = $_POST["pass"]; // Comme un utilisateur est différent, on crée des variables de sessions pour "varier" l'utilisateur comme ceci : // echo $_SESSION["login"]; (bien entendu avec les balises PHP, sinons cela ne marchera pas. } // Sinon on l'affiche un message d'erreur (généralement pour vous quand vous testez vos scripts PHP) else{ $error = TRUE; $errorMSG = "Erreur dans la requête SQL<br/>".$sql."<br/>"; } } // Sinon on fais savoir à l'utilisateur qu'il a mis un nom de compte trop long. else{ $error = TRUE; $errorMSG = "Votre nom compte ne doit pas dépasser <strong>60 caractères</strong> !"; $login = NULL; $pass = $_POST["pass"]; } } } // Si le mot de passe dépasse 60 caractères on le fait savoir else{ $error = TRUE; $errorMSG = "Votre mot de passe ne doit pas dépasser <strong>60 caractères</strong> !"; $login = $_POST["login"]; $pass = NULL; } } // Sinon on affiche un message d'erreur lui disant que ce nom de compte est déjà utilisé. else{ $error = TRUE; $errorMSG = "Le nom de compte <strong>".$_POST["login"]."</strong> est déjà utilisé !"; $login = NULL; $pass = $_POST["pass"]; } } // Sinon on fais savoir à l'utilisateur qu'il doit changer le mot de passe ou le nom de compte else{ $error = TRUE; $errorMSG = "Le nom de compte et le mot de passe doivent êtres différents !"; } } // Sinon si les deux mots de passes sont différents : elseif($_POST["pass"] != $_POST["pass2"]){ $error = TRUE; $errorMSG = "Les deux mots de passes sont différents !"; $login = $_POST["login"]; $pass = NULL; } // Sinon si le nom de compte et le mot de passe ont la même valeur : elseif($_POST["login"] == $_POST["pass"]){ $error = TRUE; $errorMSG = "Le nom de compte et le mot de passe doivent être différents !"; } //Paramètres de connection à la BDD $mysql_host='bla'; $mysql_user='bla'; $mysql_password='bla'; $mysql_base='livre_tbl'; //Verification des champs if(empty($_POST[pseudo]) || empty($_POST[message])) { print'<a href="javascript:history.back();">Le formulaire n\'est pas complet, cliquez pour le completer</a>'; } else{ //On prepare la date au format US $date_verif = date("Y-m-d H:i"); //La date au format français $date=date("d-m-Y"); //On supprime les caractères spéciaux $pseudo=AddSlashes(htmlspecialchars($_POST[pseudo])); $email=AddSlashes(htmlspecialchars($_POST[email])); $message=AddSlashes(htmlspecialchars($_POST[message])); //On se connecte à la BDD $db=mysql_connect($mysql_host,$mysql_user,$mysql_password)or die("Erreur de connection"); //Selection de BDD mysql_select_db($mysql_base,$db)or die("Erreur de connection a la base") //Requete d'insertion dans la table mysql_query("INSERT INTO livre_tbl VALUES('','$id','$login','$pass')")or die("Erreur de requete".mysql_error()); //on ferme la connection mysql_close; //Redirection vers acceuil header('location:accueil.php'); } // On affiche les erreurs : if($error == TRUE){ echo "<p align=\"center\" style=\"color:red;\">".$errorMSG."</p>";} } // Si l'inscription s'est bien déroulée on affiche le succès : if($registerOK == TRUE){ echo "<p align=\"center\" style=\"color:green;\"><strong>".$registerMSG."</strong></p>"; } ?> </body> </html>