Ecrire dans un fichier php

florence -  
heliconius Messages postés 584 Statut Membre -
Bonjour,

Comment puis-je créer un formulaire qui va ecrire ce qui a été taper dans les champs input dans un fichier php.

je voudrais remplir ces champs là (ici)


$serveur=" ";    // ici
$login="  ";       // ici
$pass=" ";       // ici
$db=" ";          // ici

$cnx = mysql_connect( "$serveur", "$login", "$pass" ) or die( "<center>Impossible de se connecter au serveur</center><br>" );

$db= mysql_select_db( "$db" ) or die( "<center>Impossible de se connecter à la base de données</center><br>" );



1 réponse

  1. heliconius Messages postés 584 Statut Membre 143
     
    Bonjour,

    J'essayerais ceci :

    <html>
    
    <head>
    <title></title>
    </head>
    
    <body>
    <form name="infoscnx"
          method="post"
          action="<?php echo $_SERVER["PHP_SELF"]; ?>">
    
       Nom ou IP du serveur SQL:
       <input type="text" name="serveur"><br/>
    
       Login de l'utilisateur SQL:
       <input type="text" name="login"><br/>
    
       Mot de passe de l'utilisateur SQL:
       <input type="text" name="pass"><br/>
    
       Nom de la base de donnée:
       <input type="text" name="db"><br/>
    
       <input type="submit" name="submit" value="Enregistrer">
    </form>
    <p>&nbsp</p>
    <?php
    if($_POST["submit"]) {
    
    	$hf = fopen('./connexion.php','w');
    	echo "\$serveur=\"".$_POST["serveur"]."\";\n";
    	echo "\$login=\"".$_POST["login"]."\";\n";
    	echo "\$pass=\"".$_POST["pass"]."\";\n";
    	echo "\$db=\"".$_POST["db"]."\";\n\n";
    
    	echo "\$cnx = mysql_connect(\"\$serveur\", \"\$login\", \"\$pass\") ";
    	echo "or die(\"<center>Impossible... serveur</center><br/>\");\n\n";
    
    	echo "\$ok = mysql_select_db(\"\$db\", \"$cnx\") ";
    	echo "or die(\"<center>Impossible... base de données</center><br/>\");\n\n";
    	fclose($hf);
    
    	// Eventuellement
    	// echo "Fichier 'connexion.php' créé";
    }
    ?>
    </body>
    
    </html>


    Ta ligne $db = mysql_connect(...); a été remplacée
    par $ok = mysql_connect(...); car
    $db contient le nom de la base de données sélectionnée
    $ok contient le lien de connexion avec la base de données à utiliser
    Ce sont deux valeurs différentes et tu avais utilisé le même nom de variable

    NOTA: Il faut que le répertoire dans lequel le fichier sera écrit possède les droits en écriture.
    0