Php aidez moi si vous plait
Résolu
layeures
Messages postés
286
Date d'inscription
Statut
Membre
Dernière intervention
-
nEm3sis Messages postés 710 Date d'inscription Statut Membre Dernière intervention -
nEm3sis Messages postés 710 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
voici le code qui ne marche pas
$words = file('texte3.txt');
$word = 'ligne7';
if(in_array($words, $word)){
echo "le mot exite";
}
else{
//
echo "le mot n existe pas";
}
ca m affiche ce message d'erreur
Warning: Wrong datatype for second argument in call to in_array in c:\program files\easyphp\www\labo modifier fichier\testa.php on line 4
lemot nexite pas
voici le code qui ne marche pas
$words = file('texte3.txt');
$word = 'ligne7';
if(in_array($words, $word)){
echo "le mot exite";
}
else{
//
echo "le mot n existe pas";
}
ca m affiche ce message d'erreur
Warning: Wrong datatype for second argument in call to in_array in c:\program files\easyphp\www\labo modifier fichier\testa.php on line 4
lemot nexite pas
A voir également:
- Php aidez moi si vous plait
- Easy php - Télécharger - Divers Web & Internet
- Expert php pinterest - Télécharger - Langages
- Mon adresse email s'il vous plaît ✓ - Forum Mail
- Php alert - Forum PHP
- S'il te plait ne pars pas oh mon amour ✓ - Forum Musique / Radio / Clip
26 réponses
Salut, pourquoi utiliser un in_array ? Utilise plutôt preg_match, si c'est juste pour de l'analyse dans une chaine c'est plus simple a mettre en place.
fread() permet de stocker un fichier dans une variable. Ça évite de mettre WHILE($ligne = fget()).
<?php $filename = "texte3.txt"; $handle = fopen($filename, "rb"); $words = fread($handle, filesize($filename)); fclose($handle); $word = '/ligne5/'; if(preg_match($word, $words)){ echo "le mot existe"; } else{ echo "le mot n existe pas"; } ?>
fread() permet de stocker un fichier dans une variable. Ça évite de mettre WHILE($ligne = fget()).
un tres tres tres tres tres tres tres grand merci de votre aide
le code qui marche est
<?php
$words = file_get_contents("texte3.txt");
$word = 'ligne4';
if( strpos($words, $word) !== false ){
echo "le mot existe";
}else{
echo "le mot n'existe pas";
}
?>
le probleme venai aussi du serveur qui est esayphp 1.6 j ai tester le code sur esayphp3 est ca a marcher
merci mille foie
le code qui marche est
<?php
$words = file_get_contents("texte3.txt");
$word = 'ligne4';
if( strpos($words, $word) !== false ){
echo "le mot existe";
}else{
echo "le mot n'existe pas";
}
?>
le probleme venai aussi du serveur qui est esayphp 1.6 j ai tester le code sur esayphp3 est ca a marcher
merci mille foie
Bonjour tout est expliquer dans la doc sur comment utiliser in_array
http://fr3.php.net/manual/fr/function.in-array.php
regarde bien le type des paramètre c'est la que tu t'es planté, en inversant les 2
http://fr3.php.net/manual/fr/function.in-array.php
regarde bien le type des paramètre c'est la que tu t'es planté, en inversant les 2
aissaie:
<?php $fichier=fopen("texte3.txt","r"); while($ligne=fgets($fichier)); { words[]=ligne; } fclose($fichier); $word = 'ligne7'; if(in_array($words, $word)){ echo "le mot exite"; } else{ // echo "le mot n existe pas"; }
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
<?php
$fichier=fopen("texte3.txt","r");
while($ligne=fgets($fichier));
{
$words=$ligne;
}
fclose($fichier);
$word = 'ligne3';
if(in_array($words, $word)){
echo "le mot exite";
}
else{
//
echo "le mot n existe pas";
}
?>
LE CODE NE MARCHE PAS
IL AFFFICHE
Warning: Wrong datatype for second argument in call to in_array in c:\program files\easyphp\www\labo modifier fichier\testa.php on line 10
le mot n existe pas
NORMALEMENT IL DEVRAIT AFFICHER LE MOT EXISTE
$fichier=fopen("texte3.txt","r");
while($ligne=fgets($fichier));
{
$words=$ligne;
}
fclose($fichier);
$word = 'ligne3';
if(in_array($words, $word)){
echo "le mot exite";
}
else{
//
echo "le mot n existe pas";
}
?>
LE CODE NE MARCHE PAS
IL AFFFICHE
Warning: Wrong datatype for second argument in call to in_array in c:\program files\easyphp\www\labo modifier fichier\testa.php on line 10
le mot n existe pas
NORMALEMENT IL DEVRAIT AFFICHER LE MOT EXISTE
<?php
$fichier=fopen("texte3.txt","r");
while($ligne=fgets($fichier));
{
$words=$ligne;
}
fclose($fichier);
$word = 'ligne3';
if(in_array($word, $words)){
echo "le mot exite";
}
else{
//
echo "le mot n existe pas";
}
?>
$fichier=fopen("texte3.txt","r");
while($ligne=fgets($fichier));
{
$words=$ligne;
}
fclose($fichier);
$word = 'ligne3';
if(in_array($word, $words)){
echo "le mot exite";
}
else{
//
echo "le mot n existe pas";
}
?>
j ai inverse words et word est ca ne m affiche plus de message d erreur mes ca m affiche a l ecran
le mot n exite pas alors que ligne5 ce trouve dans le fichier texte
d ou vient le probleme
<?php
$fichier=fopen("texte3.txt","r");
while($ligne=fgets($fichier));
{
$words[]=ligne;
}
fclose($fichier);
$word = 'ligne5';
if(in_array($word, $words)){
echo "le mot exite";
}
else{
//
echo "le mot n existe pas";
}
?>
le mot n exite pas alors que ligne5 ce trouve dans le fichier texte
d ou vient le probleme
<?php
$fichier=fopen("texte3.txt","r");
while($ligne=fgets($fichier));
{
$words[]=ligne;
}
fclose($fichier);
$word = 'ligne5';
if(in_array($word, $words)){
echo "le mot exite";
}
else{
//
echo "le mot n existe pas";
}
?>
on notera que mon script marchait parfaitement sans compter les 2 $ que j'avais oublié je me damande pourquoi tu a enlevé les 2 crochets à words[].
testé sous easy php 3.0
<?php $fichier=fopen("texte3.txt","r"); while($ligne=fgets($fichier)); { $words[]=$ligne; } fclose($fichier); $word = 'ligne3'; if(in_array($word, $words)){ echo "le mot exite"; } else{ echo "le mot n existe pas"; } ?>
de toute façon le code ne générait pas d'erreur mais ne fonctionnait pas -_-
celui la marche vraiment :
celui la marche vraiment :
<?php $words=file("texte3.txt"); $word = 'ligne3'; if(in_array($word, $words)){ echo "le mot exite"; } else{ echo "le mot n existe pas"; } ?>
:o je viens de me rendre compte que avec in_array ça marche pas en fait sauf si le mot cherché est une ligne complète du fichier
voici encore une autre version
voici encore une autre version
<?php $words = file_get_contents('texte3.txt'); $word = 'ligne7'; if( strpos($words, $word) !== false ){ echo "le mot existe"; }else{ echo "le mot n'existe pas"; } ?>
j ai tester ce code est ca ne marche pas
<?php
$words=file("texte3.txt");
$word = 'ligne3';
if(in_array($word, $words)){
echo "le mot exite";
}
else{
echo "le mot n existe pas";
}
?>
<?php
$words=file("texte3.txt");
$word = 'ligne3';
if(in_array($word, $words)){
echo "le mot exite";
}
else{
echo "le mot n existe pas";
}
?>
encore plus simple :
<?php
$words = file_get_contents('texte3.txt');
$word = 'ligne7';
if(ereg($word,$words)){
echo "le mot existe";
}else{
echo "le mot n'existe pas";
}
?>
<?php
$words = file_get_contents('texte3.txt');
$word = 'ligne7';
if(ereg($word,$words)){
echo "le mot existe";
}else{
echo "le mot n'existe pas";
}
?>
re bonjour
je voudrai savoir maintenant comment je peu faire pour que le code ecrit a la fin du fichier si le mot ne ce trouve pas dans le fichier
merci d'avance de votre aide
je voudrai savoir maintenant comment je peu faire pour que le code ecrit a la fin du fichier si le mot ne ce trouve pas dans le fichier
merci d'avance de votre aide
re bonjour
<?php
$words = file_get_contents("texte3.txt");
$word = 'ligne4';
if( strpos($words, $word) !== false ){
echo "le mot existe";
}else{
echo "le mot n'existe pas";
fopen("texte3.txt","a");
fputs($word);
}
?>
le probleme avec ce code si qui m affiche un message d'erreur genre :
Warning: file_get_contents(texte3.txt): failed to open stream: No such file or directory in c:\program files\easyphp1-8\www\nouveau dossier (3)\testa.php on line 3
le mot n'existe pas
Warning: Wrong parameter count for fputs() in c:\program files\easyphp1-8\www\nouveau dossier (3)\testa.php on line 10
est aussi il y a un autre probleme c est qu il cree un autre fichier vide.
<?php
$words = file_get_contents("texte3.txt");
$word = 'ligne4';
if( strpos($words, $word) !== false ){
echo "le mot existe";
}else{
echo "le mot n'existe pas";
fopen("texte3.txt","a");
fputs($word);
}
?>
le probleme avec ce code si qui m affiche un message d'erreur genre :
Warning: file_get_contents(texte3.txt): failed to open stream: No such file or directory in c:\program files\easyphp1-8\www\nouveau dossier (3)\testa.php on line 3
le mot n'existe pas
Warning: Wrong parameter count for fputs() in c:\program files\easyphp1-8\www\nouveau dossier (3)\testa.php on line 10
est aussi il y a un autre probleme c est qu il cree un autre fichier vide.
Warning: file_get_contents(texte3.txt): failed to open stream: No such file or directory in c:\program files\easyphp1-8\www\nouveau dossier (3)\testa.php on line 3
pour éviter ça rajoute un test avec file_exists
Warning: Wrong parameter count for fputs() in c:\program files\easyphp1-8\www\nouveau dossier (3)\testa.php on line 10
tu as oublié de regarder comment on utilise fputs ... -> https://www.php.net/manual/fr/function.fputs.php