Précédent   Forum des professionnels en informatique > PHP > Langage > Fichiers
Fichiers Forum d'entraide sur les fichiers avec PHP. Avant de poster -> FAQ fichiers et Sources fichiers
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 22/03/2007, 12h04   #1
Invité de passage
 
Inscription : octobre 2004
Messages : 10
Détails du profil
Informations forums :
Inscription : octobre 2004
Messages : 10
Points : 0
Points : 0
Par défaut Messages erreur PHP

Bonjour, je suis en train d'installer un guestbook en php sur un site (code trouvé sur le net), et j'ai ces erreurs qui apparaissent à l'ouverture du formulaire :
Citation:
Warning: main(C:\Program Files\EasyPHP1-8\www\Site OK\guestbook.txt): failed to open stream: No such file or directory in c:\program files\easyphp1-8\www\site ok\guestbook\guestbook.php on line 39

Warning: main(): Failed opening 'C:\Program Files\EasyPHP1-8\www\Site OK\guestbook.txt' for inclusion (include_path='.;C:/Program Files/EasyPHP1-8\php\pear\') in c:\program files\easyphp1-8\www\site ok\guestbook\guestbook.php on line 39

Je me creuse la tete, je cherche, mais utilisant de façon amateur et pour la première fois le langage PHP, je bloque un peu... Merci de vos réponses !!

Pour info, voici le contenu de la page "guestbook.php" :

Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
<form method=post action=writeguest.php 
onSubmit='if ( this.nom.value.length < 2 ) { return false ;}' >
<table align="center">
<tr><td><span class="Style6">Nom :</span></td>
    <td><input type=text name=nom size=25 ></td>
<td rowspan=2><input type=submit value=Envoyer></td></tr>
<tr>
  <td><span class="Style6">eMail :</span></td>
    <td><input type=text name=mail size=25 ></td></tr>
<tr><td><span class="Style6">Message:</span></td>
<td colspan=2>
        <textarea name=message rows=4 cols=47></textarea>
    </td></tr>
</table>
</form>
 
 <?php include("C:\Program Files\EasyPHP1-8\www\Site OK\guestbook.txt"); ?>


Voici le contenu de la page "writeguest.php" :

Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
<?
//Ouverture du fichier en &eacute;criture
$fp = fopen("\Program Files\EasyPHP1-8\www\Site OK\guestbook/guestbook.txt",a);
 
//On convertit les caracteres html
$nom = htmlspecialchars($_POST['nom']);
$mail = htmlspecialchars($_POST['mail']);
$message = stripslashes(nl2br(htmlentities($_POST['message'])));
$d = date ( "d/m/Y H:i:s" );
 
$page = "";
$lemail = "<a href=\"mailto:$mail\">$mail</a>";
$page .= "<b>$nom</b> (".$lemail.") - $d<br>$message<br><hr>\n";
 
//On rajoute le message
fwrite($fp,"$page" ,strlen("$page"));
 
//fermeture du fichier
fclose($fp);
 
//On affiche le message enregistr&eacute;
echo "Merci $nom, votre message est ajouté au guestbook...<br>
<br>";
echo "email : $mail <br> message : $message<br><br>";
 
?>
<a href="guestbook.php">Retour au guestbook</a>

Merci !!!
Adry est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 22/03/2007, 12h16   #2
Expert Confirmé

 
Avatar de Amara
 
Inscription : juillet 2004
Messages : 2 684
Détails du profil
Informations personnelles :
Localisation : France, Sarthe (Pays de la Loire)

Informations forums :
Inscription : juillet 2004
Messages : 2 684
Points : 2 910
Points : 2 910
Le chemin vers guestbook.txt doit pas être bon.
__________________
Pas de questions techniques par MP, le forum est là pour ça et est plus efficace.

Orthographe : une connexion (avec un x), un langage (sans u), une requête (un seul t), 'une quote' (avec qu), une syntaxe (sans h)
Amara est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 22/03/2007, 12h18   #3
Membre Expert
 
Inscription : octobre 2002
Messages : 1 141
Détails du profil
Informations personnelles :
Âge : 32
Localisation : France, Rhône (Rhône Alpes)

Informations forums :
Inscription : octobre 2002
Messages : 1 141
Points : 1 204
Points : 1 204
Envoyer un message via MSN à Raideman
essaie plutot ceci
Code :
$fp = fopen("./guestbook/guestbook.txt",a);
ou
Code :
$fp = fopen("./guestbook.txt",a);
au lieu de

Code :
$fp = fopen("\Program Files\EasyPHP1-8\www\Site OK\guestbook/guestbook.txt",a);
et idem pour le include.
Raideman est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 22/03/2007, 12h21   #4
Membre expérimenté
 
Homme Rémi BOURGAREL
Développeur .NET
Inscription : juin 2006
Messages : 426
Détails du profil
Informations personnelles :
Nom : Homme Rémi BOURGAREL
Âge : 25
Localisation : France, Haute Garonne (Midi Pyrénées)

Informations professionnelles :
Activité : Développeur .NET
Secteur : Tourisme - Loisirs

Informations forums :
Inscription : juin 2006
Messages : 426
Points : 584
Points : 584
Code :
1
2
3
Warning: main(C:\Program Files\EasyPHP1-8\www\Site OK\guestbook.txt): failed to open stream: No such file or directory in c:\program files\easyphp1-8\www\site ok\guestbook\guestbook.php on line 39
 
Warning: main(): Failed opening 'C:\Program Files\EasyPHP1-8\www\Site OK\guestbook.txt' for inclusion (include_path='.;C:/Program Files/EasyPHP1-8\php\pear\') in c:\program files\easyphp1-8\www\site ok\guestbook\guestbook.php on line 39
C'est simple "failed to open stream: No such file or directory" : le fichier demande n existe pas

SI il existe vraiment, essaie d'enlever l'espace dans le nom du dossier Site OK ...
Sinon essai de redefinir ton include path, pour le mettre sur la racine de tes site web ( include_path='.;C:/Program Files/EasyPHP1-8\php\pear\' ).

EDIT : dsl j ai mis logtemp a poster, du coup j'ai pas vu les reponse.
Bourgui est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 22/03/2007, 12h27   #5
Invité de passage
 
Inscription : octobre 2004
Messages : 10
Détails du profil
Informations forums :
Inscription : octobre 2004
Messages : 10
Points : 0
Points : 0
Ok, merci pour ces réponses super rapides ! Je vais essayer tout ça...
Adry est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 22/03/2007, 13h06   #6
Membre Expert
 
Inscription : octobre 2002
Messages : 1 141
Détails du profil
Informations personnelles :
Âge : 32
Localisation : France, Rhône (Rhône Alpes)

Informations forums :
Inscription : octobre 2002
Messages : 1 141
Points : 1 204
Points : 1 204
Envoyer un message via MSN à Raideman
en plus, pour les chemins avec de type c:\rep il faut mettre c:\\rep car le backslash est un caractère spécial en php.
Raideman est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 23/03/2007, 16h09   #7
Invité de passage
 
Inscription : octobre 2004
Messages : 10
Détails du profil
Informations forums :
Inscription : octobre 2004
Messages : 10
Points : 0
Points : 0
Nickel, ça marche.
Mais maintenant, un autre souci :
Quand on clique sur "envoyer", c'est le message erreur suivant qui s'affiche :

Notice: Use of undefined constant a - assumed 'a' in c:\program files\easyphp1-8\www\site ok\guestbook\writeguest.php on line 20


Merci de votre aide !
Adry est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 23/03/2007, 16h15   #8
Expert Confirmé

 
Avatar de Amara
 
Inscription : juillet 2004
Messages : 2 684
Détails du profil
Informations personnelles :
Localisation : France, Sarthe (Pays de la Loire)

Informations forums :
Inscription : juillet 2004
Messages : 2 684
Points : 2 910
Points : 2 910
C'est dans ton fopen, il faut pas mettre a tout seul mais "a" avec des guillemets...
__________________
Pas de questions techniques par MP, le forum est là pour ça et est plus efficace.

Orthographe : une connexion (avec un x), un langage (sans u), une requête (un seul t), 'une quote' (avec qu), une syntaxe (sans h)
Amara est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 23/03/2007, 16h21   #9
Invité de passage
 
Inscription : octobre 2004
Messages : 10
Détails du profil
Informations forums :
Inscription : octobre 2004
Messages : 10
Points : 0
Points : 0
comme ça ?

$fp = fopen("./guestbook.txt","a");

paske là g plus rien qd je clique "envoyer", rien ne se passe...

mais l'erreur n'a peut-être rien à voir, ce serait pas plutot à ce niveau :

<form method=post action=writeguest.php
onSubmit='if ( this.nom.value.length < 2 ) { return false ;}' >


sur la page guestbook.php ?
Adry est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 15h11.


 
 
 
 
Partenaires

Hébergement Web