Fonction ecrire en php
Résolu
fanimed
Messages postés
84
Date d'inscription
Statut
Membre
Dernière intervention
-
fanimed Messages postés 84 Date d'inscription Statut Membre Dernière intervention -
fanimed Messages postés 84 Date d'inscription Statut Membre Dernière intervention -
Bonjour a tous
J'ai ecrit un programme a trois fichiers avec php
--le premier fichier index.php lui permet de creer des table dune BDD dont le nom a ete fourni par un utilisateur.
dnc: 1 formulaire retient le nom dhote le username et le password du serveur ainsi que le nom de la BDD.Ensuite du formulaire ces infos sont envoyees sur index.php qui, a son tour va creer des tables(prevues) dans cette BDD.
--Le second fichier connection.php lui doit contenir les informations nom dhote username password et le nom de la Bdd qui etait sur index.php...Donc index.php ecrit avec fputs() ou fwrite() dns ce fichier le nom dhote le username le password et le nom de la BDD.. voici le code:
<?php
//Ecrivons dans le fichier connection.php les variables de connection
$fichier = fopen('../admin1/connection.php','w+') ;
fseek($fichier,0) ;
fputs($fichier,"$hosti\n $useri\n $passwordi\n $db1") ;
?>
--le troisieme fichier recuperer_connection.php lui il lit seulement les informations contenues dans connections.php pour extraire le nom dhote le username le password et le nom de la BDD pour les utiliser dns dautres fichiers..
dans ce fichier jai utiliser la fonction file() . voici le code:
<?php
$path = getcwd();
$valeur = file($path."/connection.php");
if(is_array($valeur))
{
$valeur='';
for ($i=0; $i<count($valeur); $i++) {
$ligne[$i] = $valeur ;
}
$host = $ligne[0] ;
$user = $ligne[1] ;
$password = $ligne[2] ;
$db = $ligne[3] ;
mysql_connect($host,$user,$password) or die("Impossible de se conecter au serveur") ;
mysql_select_db($db) ;
}
?>
Mon probleme ces au niveau du dernier fichier
quand index.php ecrit dans connexion.php. si une des informations est vide, il va simplement sauter de ligne.
Exemple:hostname = 'localhost'; username = 'root' ; password =' ' et db = 'maBDD' ;
il ecrira ainsi dans connexion.php :
localhost
root
maBDD
vous voyez le vide entre root et maBDD, ces le password justement qui est vide
le probleme ces comment lfaire savoir a mon code recuperer_connection.php que password est vide
parce que quand jexecute mon programme ces comme si password n'existait pas.Alors qu'il existe mais seulemt vide
Aidez moi a resoudre ce probleme..Merci
J'ai ecrit un programme a trois fichiers avec php
--le premier fichier index.php lui permet de creer des table dune BDD dont le nom a ete fourni par un utilisateur.
dnc: 1 formulaire retient le nom dhote le username et le password du serveur ainsi que le nom de la BDD.Ensuite du formulaire ces infos sont envoyees sur index.php qui, a son tour va creer des tables(prevues) dans cette BDD.
--Le second fichier connection.php lui doit contenir les informations nom dhote username password et le nom de la Bdd qui etait sur index.php...Donc index.php ecrit avec fputs() ou fwrite() dns ce fichier le nom dhote le username le password et le nom de la BDD.. voici le code:
<?php
//Ecrivons dans le fichier connection.php les variables de connection
$fichier = fopen('../admin1/connection.php','w+') ;
fseek($fichier,0) ;
fputs($fichier,"$hosti\n $useri\n $passwordi\n $db1") ;
?>
--le troisieme fichier recuperer_connection.php lui il lit seulement les informations contenues dans connections.php pour extraire le nom dhote le username le password et le nom de la BDD pour les utiliser dns dautres fichiers..
dans ce fichier jai utiliser la fonction file() . voici le code:
<?php
$path = getcwd();
$valeur = file($path."/connection.php");
if(is_array($valeur))
{
$valeur='';
for ($i=0; $i<count($valeur); $i++) {
$ligne[$i] = $valeur ;
}
$host = $ligne[0] ;
$user = $ligne[1] ;
$password = $ligne[2] ;
$db = $ligne[3] ;
mysql_connect($host,$user,$password) or die("Impossible de se conecter au serveur") ;
mysql_select_db($db) ;
}
?>
Mon probleme ces au niveau du dernier fichier
quand index.php ecrit dans connexion.php. si une des informations est vide, il va simplement sauter de ligne.
Exemple:hostname = 'localhost'; username = 'root' ; password =' ' et db = 'maBDD' ;
il ecrira ainsi dans connexion.php :
localhost
root
maBDD
vous voyez le vide entre root et maBDD, ces le password justement qui est vide
le probleme ces comment lfaire savoir a mon code recuperer_connection.php que password est vide
parce que quand jexecute mon programme ces comme si password n'existait pas.Alors qu'il existe mais seulemt vide
Aidez moi a resoudre ce probleme..Merci
A voir également:
- Fonction ecrire en php
- Fonction si et - Guide
- Ecrire en gras sur whatsapp - Guide
- Écrire en majuscule - Guide
- Ecrire en miroir - Guide
- Application pour écrire les chiffre en lettre - Télécharger - Outils professionnels
6 réponses
$valeur = file($path."/connection.php");
if(is_array($valeur))
{
$valeur='';
la fonction file lit le fichier et met dans un array ligne par ligne
si tu mets si array => $valeur=''; tu écrases aussitot l'array
if(is_array($valeur))
{
$valeur='';
la fonction file lit le fichier et met dans un array ligne par ligne
si tu mets si array => $valeur=''; tu écrases aussitot l'array
Ok Merci..Donc tu proposes que jenleve $valeur = ' ';
en fait je lavais mis pour preciser a mon code qu'au cas ou la ligne est vide de donner une valeur nulle a cette ligne....
Mais bon jessaie et je te fais signe
en fait je lavais mis pour preciser a mon code qu'au cas ou la ligne est vide de donner une valeur nulle a cette ligne....
Mais bon jessaie et je te fais signe
oui sinon ça écrase ton array
mais je n'avais pas tout lu ton pb en fait c'est qd passwd est vide
ne fais pas comme ça, ne mets pas une ligne par élément a enregistrer dans ton fichier sinon tu ne peux pas séparer les éléments si un est vide
il faut que qd tu enregistres tu mettes sur une seule ligne
le_host|le_login|le_password|le_nom_db
le séparateur | c'est le pipe c. a d. le caractère obtenu par touche 6+AltGr
tu peux mettre autre chose si tu veux mais celui la il y a peu de chances qu'il soit dans tes valeurs
ensuite pour les séparer tu fais un explode("|",$valeur) sur une seule ligne bien sur
mais je n'avais pas tout lu ton pb en fait c'est qd passwd est vide
ne fais pas comme ça, ne mets pas une ligne par élément a enregistrer dans ton fichier sinon tu ne peux pas séparer les éléments si un est vide
il faut que qd tu enregistres tu mettes sur une seule ligne
le_host|le_login|le_password|le_nom_db
le séparateur | c'est le pipe c. a d. le caractère obtenu par touche 6+AltGr
tu peux mettre autre chose si tu veux mais celui la il y a peu de chances qu'il soit dans tes valeurs
ensuite pour les séparer tu fais un explode("|",$valeur) sur une seule ligne bien sur
merci
mais jai pas tres bien compris la partie ou tu dis de les separer avec explode("|",$valeur)...
ces ok pr la separation avec les pipes lors de lenregistrement.
Mais comment sa se passe exactement lors de la recuperation des variables surtout le mot de passe
mais jai pas tres bien compris la partie ou tu dis de les separer avec explode("|",$valeur)...
ces ok pr la separation avec les pipes lors de lenregistrement.
Mais comment sa se passe exactement lors de la recuperation des variables surtout le mot de passe
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question$valeur = file($path."/connection.php"); //la ligne une sera:$valeur[0] il n'y a que celle qui qui nous intéresse //pour séparer: $array_ligne=explode("|",$valeur[0]); $host=$array_ligne[0]; $login=$array_ligne[1]; $pass=$array_ligne[2]; $db=$array_ligne[3];
si pass est vide il n'y aura pas de valeur entre les deux | donc ça te sortira une valeur vide