Partage
  • Partager sur Facebook
  • Partager sur Twitter

Erreur MySQL par PHP sur MAMP Windows

impossible d'écrire des données dans la base

    27 avril 2017 à 10:23:36

    Erreur : SQLSTATE[HY000] [2002] Aucune connexion n�a pu �tre �tablie car l�ordinateur cible l�a express�ment refus�e.

    MAMP :

    PHP sur MAMP :

    Ports sur MAMP (je n'utilise pas le port 80 car il est utilisé par skype) :

    phpAdmin :

    Mon formulaire :

    <!DOCTYPE html>
    <html>
    	<head>
    		<meta charset="UTF-8" />
    		<link rel="stylesheet" href="../css/DPOavecMySQL.css">
    		<title>Inscription</title>
    	</head>
    	<body>
    		
    		<form action="validation_inscription.php" method="post">
    			<h2>Formulaire d'inscription</h2>
    				<label>Prenom</label> : <input type="text" name="Prenom" placeholder="Prénom" id="prenomInscription" required /><br />
    				<label>Nom</label> : <input type="text" name="Nom" placeholder="Nom" id="nomInscription" required /><br />
    				<label>courriel</label> : <input type="email" name="courriel" placeholder="adresse@courriel.fr" id="courrielInscription" required /><br />
    				<label>telephone</label> : <input type="tel" name="telephone" placeholder="0845769250" id="telephoneInscription" required /><br />
    				<label>identifiant</label> : <input type="text" name="identifiant" placeholder="choisir identifiant" id="identifiantInscription" required /><br />
    				<label>mot de passe</label> : <input type="password" name="mot de passe" id="motDePasseInscription" required /><br />
    				<label>validation du mot de passe</label> : <input type="password" name="validation du mot de passe" id="motDePasse2Inscription" required /><br />
    				<input type="submit" value="Valider" />
    		</form>
    
    		<script src="http://localhost:8888//js/inscription.js"></script>
    
    	</body>
    </html>

    Mon traitement du formulaire :

    <!DOCTYPE html>
    <html>
    	<head>
    		<meta charset="UTF-8" />
    		<link rel="stylesheet" href="../css/DPOavecMySQL.css">
    		<title>Validation</title>
    	</head>
    	<body>
            <?php
    			try
    			{
    				$bdd_identifiants_connexion = new PDO('mysql:host=localhost;dbname=identifiants_connexion;charset=utf8', 'root', 'root');
    			}
    			catch (Exception $e)
    			{
    			        die('Erreur : ' . $e->getMessage());
    			}
    
    			$ajout_utilisateur = $bdd_identifiants_connexion->prepare('INSERT INTO identifiants_connexion(prenom, nom, courriel, telephone, identifiant, mot_de_passe) VALUES(:prenom, :nom, :courriel, :telephone, :identifiant, :mot_de_passe)');
    			$ajout_utilisateur->execute(array(
                    'prenom' => $POST['Prenom'],
                    'nom' => $POST['Nom'],
                    'courriel' => $POST['courriel'],
                    'telephone' => $POST['telephone'],
                    'identifiant' => $POST['identifiant'],
                    'mot_de_passe' => $POST['mot de passe']
    				));
            
                echo 'Votre inscription a bien été prise en compte';
            
                $chrono_ms = 0;
                while ($chrono_ms < 3000) {
                    $chrono_ms = $chrono_ms + 1;
                }
            
                header('Location: http://localhost:8888/php/connexion_inscription.php');
                exit();
    		?>
        </body>
    </html>


    C'est la première fois que j'utilise MySQL et php. Je suis bloqué. J'ai essayé de mettre '' en mot de passe mais rien ne change. J'ai aussi créé un nouvel utilisateur avec tous les accès et en changeant le premier 'root' par 'utilisateur' comme le nom créé et mot de mot '' mais rien non plus.

    Il doit me manquer un mot de passe que je ne sais pas trouver. Ou c'est MAMP sur Windows qui s'utilise différemment (car pas beaucoup d'informations sur Windows, uniquement sur Mac).

    Je suis sur des essais de base, juste pour apprendre. Avant de mettre du code sécurisé et aller plus loin, j'aimerais bien comprendre ce qui bloque.

    Merci d'avance,

    Antony

    -
    Edité par AntonyGELICUS 27 avril 2017 à 10:33:22

    • Partager sur Facebook
    • Partager sur Twitter
      27 avril 2017 à 10:57:20

      Tu essayes de te connecter à ta BDD avec les identifiants :

      "user" => "root"

      "mdp" => "root"

      or, de ce que je vois, tu as 3 utilisateur root dont 2 seulement qui utilisent un mot de passe. Bon, vu que tu les a cachés je ne saurais pas t'en dire plus, mais a priori vu la taille des mot de passe, aucun ne semble être "root".

      Essaye avec les identifiants :

      "user"="root"
      "mdp"=""  <- sans mot de passe 

      aussi, après tu auras peut-être une erreur supplémentaire puisque la table "identifiants_connexion" à laquelle tu essaye de te connecter ne semble pas exister.

      -
      Edité par Etruiaz 27 avril 2017 à 10:58:34

      • Partager sur Facebook
      • Partager sur Twitter
      La seul chance qu'on a de gagner la guerre, c'est qu'en face ils soient aussi cons qu'ici !
        27 avril 2017 à 13:25:47

        Salut !

        Je pense qu'il faut spécifier le port lors de la connexion à MySQL avec PDO. MAMP fait que son MySQL n'utilise pas le port standard par défaut.

        -
        Edité par Ymox 27 avril 2017 à 13:26:04

        • Partager sur Facebook
        • Partager sur Twitter
          27 avril 2017 à 14:49:40

          Ah oui en effet Ymox a peut-être bien raison, en plus sur la page concernée, tu as un bouton  "set WEB&MySQL ports to 80 & 3306"

          Préfère change le port de skype plutôt que celui de tes projets WEB

          -
          Edité par Etruiaz 27 avril 2017 à 14:50:16

          • Partager sur Facebook
          • Partager sur Twitter
          La seul chance qu'on a de gagner la guerre, c'est qu'en face ils soient aussi cons qu'ici !
            28 avril 2017 à 11:27:38

            Bonjour,

            Merci pour vos réponses qui m'ont fait avancer. Il y avait 2 erreur : la première avec le port et la seconde avec le mélange de table et base de donnée.

            J'avais aussi des erreurs : $_POST[] et non $POST[]

            Maintenant ça fonctionne.

            Merci

            • Partager sur Facebook
            • Partager sur Twitter
              28 avril 2017 à 17:35:58

              Ouep,

              L'erreur "l'ordinateur cble l'a expressément refusé" est causé par le port.

              Ensuite tu aurais simplement eu des erreurs PHP.

              • Partager sur Facebook
              • Partager sur Twitter
              La seul chance qu'on a de gagner la guerre, c'est qu'en face ils soient aussi cons qu'ici !

              Erreur MySQL par PHP sur MAMP Windows

              × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
              × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
              • Editeur
              • Markdown