créer un fichier .php, pb de mise en forme

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 : créer un fichier .php, pb de mise en forme

par Cyrano » 22 sept. 2005, 17:21

Tiens, voilà, testé et fonctionnel:
<?php
$login = "mon_nom";
$host  = "localhost";
$pass  = "";
$db    = "test";

$config = "./connexion.php";
if (!file_exists($config))
{
    $infos = array(
        "<?php\r\n",
        "\$user    = \"". $login ."\";\r\n",
        "\$host    = \"". $host ."\";\r\n",
        "\$passwd  = \"". $pass ."\";\r\n",
        "\$nomBase = \"". $db ."\";\r\n",
        "\r\n",
        "\$connexion = mysql_connect(\$host,\$user,\$passwd);\r\n",
        "mysql_select_db(\$nomBase,\$connexion);\r\n",
        "?>"
    );
    $fichier = fopen($config, "w");
    foreach($infos as $ligne)
    {
        fwrite($fichier, $ligne);
    }
    fclose($fichier);
}
?>
Résultat obtenu:
<?php
$user    = "mon_nom";
$host    = "localhost";
$passwd  = "";
$nomBase = "test";

$connexion = mysql_connect($host,$user,$passwd);
mysql_select_db($nomBase,$connexion);
?>

par VaN » 22 sept. 2005, 17:20

t'as raté mon post :(
ayé c'est bon merci :)
<?php
$infos = 	'<?php'."\r\n".
							'$user="'.$login.'";'."\r\n".
							'$host="'.$host.'";'."\r\n".
							'$passwd="'.$pass.'";'."\r\n".
							'$nomBase="'.$db.'";'."\r\n".

							'$connexion=mysql_connect($host,$user,$passwd);'."\r\n\r\n".
							'mysql_select_db($nomBase,$connexion);'."\r\n".
							'?>';
				
				$file = fopen("connexion.php", "w");
				fwrite($file, $infos);
				fclose($file);
?>

par Tho » 22 sept. 2005, 17:01

t'as raté mon post :(

par VaN » 22 sept. 2005, 16:47

résultat :
<?php echo "<br>";$user="root";echo "<br>";$host="localhost";echo "<br>";$passwd="";echo "<br>";$nomBase="forum_test";echo "<br>";$connexion=mysql_connect($host,$user,$passwd);echo "<br>";mysql_select_db($nomBase,$connexion);echo "<br>";?>
dreamweaver reconnait maintenant que c'est du php, car il me le lit en couleur, mais il ne fait toujours pas les sauts de ligne :/

par Tho » 22 sept. 2005, 16:43

Il vaut mieux éviter les echo dans un fichier de connexion.
Van, deux problèmes dans ton code : le saut de ligne sous windows est \r\n.
Pour que ces caractères soient interprétés, il faut les mettre entre guillemets doubles.
$s = "salut\r\ntoto";

par Truc » 22 sept. 2005, 16:38

Salut, s'il s'agit de la création d'un fichier .php essai plustot comme ceci:
<?
$saut='echo "<br>";';
$infos =     '<?php '.$saut.
                            '$user="'.$login.'";'.$saut.
                            '$host="'.$host.'";'.$saut.
                            '$passwd="'.$pass.'";'.$saut.
                            '$nomBase="'.$db.'";'.$saut.

                            '$connexion=mysql_connect($host,$user,$passwd);'.$saut.
                            'mysql_select_db($nomBase,$connexion);'.$saut.
                            '?>'; 

?>

créer un fichier .php, pb de mise en forme

par VaN » 22 sept. 2005, 16:22

j'essaie de créer un fichier .php, avec les infos qui permettent de se connecter à une base de données.

mon script :
<?php
if (!file_exists("connexion.php"))
			{
				$infos = 	'<?php\n\r'.
							'$user="'.$login.'";\n\r'.
							'$host="'.$host.'";\n\r'.
							'$passwd="'.$pass.'";\n\r'.
							'$nomBase="'.$db.'";\n\r\n\r'.

							'$connexion=mysql_connect($host,$user,$passwd);\n\r'.
							'mysql_select_db($nomBase,$connexion);'.
							'?>';
				
				$file = fopen("connexion.php", "w");
				fwrite($file, $infos);
				fclose($file);
		}?>
hélas en ouvrant mon fichier, je me retrouve avec ça :
<?php\n\r$user="root";\n\r$host="localhost";\n\r$passwd="";\n\r$nomBase="forum_test";\n\r\n\r$connexion=mysql_connect($host,$user,$passwd);\n\rmysql_select_db($nomBase,$connexion);?>
alors que je souhaiterai avoir ça :
<?
$user="root";
$host="localhost";
$passwd="";
$nomBase="extranet";

$connexion=mysql_connect($host,$user,$passwd);
mysql_select_db($nomBase,$connexion);
?>
où est le probleme ?