Code correcte ?

john_med Messages postés 17 Statut Membre -  
john_med Messages postés 17 Statut Membre -
bonsoir tous le monde, j'ai besoin d'aide, est ce que ce code est correcte du coté syntaxe et si ce que j'ai fait c'est fusable( genre je veux récuperer a partir d'un fichier(baseuser.txt) un login et ouvrir un fichier(que j'ai creer précedemment) qui porter ce nom et récuperer son contenu.....:

$fh=fopen(baseuser.".txt","r+");
$nom=fgets($fh);
$fp=fopen($nom,"r+"); // c'est ici que j'obtient le message d'errreur invalid argument
$annonce=file_get_contents("$nom1"); // et encore ici invalid argument

7 réponses

hamzafes Messages postés 258 Statut Membre 54
 
Salam,

1- c'est "baseuser.txt" et pas baseuser.".txt"
2- puis file_get_content($nom)
3- ensuite pourquoi faire fopen($nom, "r+") si tu veux utiliser file_get_content ?
4- finalement votre description de l'objectif de ce script n'est pas claire

Hamza
0
john_med Messages postés 17 Statut Membre
 
ecoute j'ai un mini site d'annonce grauite, j'ai enregestré les login de mes utulisateur dans un fichier, baseuser.txt, et leur annonce dans un fichier qui porte le nom de login..
alors pour que j'affiche chaque utulisateur et son annonce, j'ai proceder par récupération du son nom a partir du fichier baseuser et a partiiir du nom j'utulise file_get_contents pour recuperer l'annonce....
avez vs un script a me proposer ??
.
0
Alain_42 Messages postés 5413 Statut Membre 894
 
fgets va lire la ligne courante du fichier, je suppose que dans ce fichier il y a plusieurs login donc plusieurs lignes, alors il faut faire une boucle

vas voir cette fonction ici: https://www.php.net/manual/fr/function.fgets.php
0
john_med Messages postés 17 Statut Membre
 
J'ai fait une boucle mon frere, mais file_get_contents() vx pas fonctioner,
0
john_med Messages postés 17 Statut Membre
 
elle m'indique une erreur, avec invalid argument
0
Alain_42 Messages postés 5413 Statut Membre 894
 
$fh=fopen(baseuser.".txt","r+");
$nom=fgets($fh);
$fp=fopen($nom,"r+"); // c'est ici que j'obtient le message d'errreur invalid argument
$annonce=file_get_contents("$nom1"); // et encore ici invalid argument


où est la boucle ?
0
john_med Messages postés 17 Statut Membre
 
j'ai pas copier tous le code...!!!!
0
john_med Messages postés 17 Statut Membre
 
<?php
$nbr_usr= 0;
$fh=fopen("base.usr",'r+');
$tab=file("base.usr");
$nbr_usr=count($tab);
?>
</p>



************************************************HTML*********************************************
<p align="center" class="Style9"><span class="Style14">~0~</span> LISTES DES ANNONCES ENREGESTREES: <span class="Style14">~0~</span></p>
<p align="center" class="Style9"> </p>
<p align="center"> </p>
<div align="center">
<table width="943" height="90" border="2">
<tr>
<td width="466"><div align="center" class="Style6">UTULISATEURS</div></td>
<td width="459"><div align="center" class="Style6">ANNONCES</div></td>
</tr>
****************************************************************************************************
<?php


for ($i=0 ; $i<$nbr_usr ; $i++)
{

$nom=fgets($fh);
$nom1=str_replace(' ','',$nom);
$annonce=file_get_contents($nom);
?>
**********************************************************************************************
<tr>
<td class="Style1"><h1><?php echo $nom; ?></h1></td>
<td> <h2><?php echo $annonce; ?></h2></td>
</tr>
**********************************************************************************************
<?php
}
fclose($fh);
?>



voila le code en entier
0
Alain_42 Messages postés 5413 Statut Membre 894
 
<?php 
/* 
a supprimer avec la methode ci dessous pas besoin 
$nbr_usr= 0; 
$fh=fopen("base.usr",'r+'); 
$tab=file("base.usr"); 
$nbr_usr=count($tab); 
*/ 
?> 
</p> 



************************************************HTML********************************************* 
<p align="center" class="Style9"><span class="Style14">~0~</span> LISTES DES ANNONCES ENREGESTREES: <span class="Style14">~0~</span></p> 
<p align="center" class="Style9"> </p> 
<p align="center"> </p> 
<div align="center"> 
<table width="943" height="90" border="2"> 
<tr> 
<td width="466"><div align="center" class="Style6">UTULISATEURS</div></td> 
<td width="459"><div align="center" class="Style6">ANNONCES</div></td> 
</tr> 
**************************************************************************************************** 
<?php 
$fh=fopen("base.usr",'r'); 
if ($fh) { 
    while (($nom = fgets($fh, 4096)) !== false) { 
        $nom1=str_replace(' ','',$nom); 
  $annonce=file_get_contents($nom1); //la tu avait mis $nom au lieu de $nom1 
  //et ton fichier qui contient l'annonce il n'a pas d'extension ?? 
  // genre $nom1.".txt" 
  //nota h1  h2 c'est plutôt pour des titres 

?> 
  ********************************************************************************************** 
  <tr> 
  <td class="Style1"><h1><?php echo $nom; ?></h1></td> 
  <td> <h2><?php echo $annonce; ?></h2></td> 
  </tr> 
  ********************************************************************************************** 
<?php 
 } 
    if (!feof($fh)) { 
        echo "Erreur: fgets() a échoué\n"; 
    } 
    fclose($fh); 
} 
?> 
0
john_med Messages postés 17 Statut Membre
 
invalid argument dans cette ligne :/

$annonce=file_get_contents($nom1)
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Alain_42 Messages postés 5413 Statut Membre 894
 
essaies de mettre un echo pour voir:

.....
$nom1=str_replace(' ','',$nom); 
echo "nom:".$nom1;
  //$annonce=file_get_contents($nom1); 
$annonce=""; //provisoire
....

0
john_med Messages postés 17 Statut Membre
 
ecoute si je prend un nom de baseusr et j fait sa manuelement ca marche trés bien:
exemple;
j'ai fait sa:
$annonce=file_get_contents("alain.txt"):
echo $annonce;

sa marche tré bien, mais quand je fait sa automatiquement sa marche pas
0
Alain_42 Messages postés 5413 Statut Membre 894
 
justement mets l'echo comme je t'ai dit de faire, pour voir ce que sort filegets dans la variable $nom1
et ton fichier, réellement, il se nomme comment ?
baseusr
baseusr.txt
base.usr

parce que tu as donné des noms différents lors de la discution.
0
john_med Messages postés 17 Statut Membre
 
base.usr, et echo $nom me donne les nom que j'ai dans mon fichier sans espaces
0
Alain_42 Messages postés 5413 Statut Membre 894
 
est ce que chacun de ces noms correspond à un fichier ? (avec leur extension)

essaies comme ça pour voir:
<?php 
$fh=fopen("base.usr",'r'); 
if ($fh) { 
    while (($nom = fgets($fh, 4096)) !== false) { 
        $nom1=str_replace(' ','',$nom); 
		if(is_readable($nom1){
			$annonce=file_get_contents($nom1); 
		}else{
		
			echo "le fichier <b>$nom1</b> n'est pas accessible ou n'existe pas !<br />";
		}
?> 
  ********************************************************************************************** 
  <tr> 
  <td class="Style1"><h1><?php echo $nom; ?></h1></td> 
  <td> <h2><?php echo $annonce; ?></h2></td> 
  </tr> 
  ********************************************************************************************** 
<?php 
 } 
    if (!feof($fh)) { 
        echo "Erreur: fgets() a échoué\n"; 
    } 
    fclose($fh); 
} 
?> 
0
john_med Messages postés 17 Statut Membre
 
bonjouùùr, bein il m'affiche innaccessible ou bien inéxistant alors, que dans mon repertoire www ces fichiers existent.....
merci pour votre aide :)
0