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 15/12/2006, 11h21   #1
Invité de passage
 
Inscription : décembre 2006
Messages : 8
Détails du profil
Informations forums :
Inscription : décembre 2006
Messages : 8
Points : 1
Points : 1
Par défaut Simple probleme de Parse_error

Bonjour a tous,
tout d'abord je tenais a vous felicitez pour votre site car il m'a bien aidé jusqu'a présent, mais la si je fais appel a vous c'est que je n'y comprend plus rien....
Voila je vous explique j'ai fais une classe Base.php5 qui me sert pour me connecter a ma Base de donnée Mysql.
Jusque la tout va bien. Mais (et oui ya un mais) lorsque je veux faire une identification basique dans un fichier ident.php j'importe mon fichier en faisant un "require("base.php5");" et ensuite j'utilise mes fonctions..
Et voila donc mon probleme lorsque je lance l'identification le navigateur me sors cette erreur:
Parse error: parse error, expecting `T_OLD_FUNCTION' or `T_FUNCTION' or `T_VAR' or `'}'' in c:\program files\easyphp1-8\www\base.php5 on line 4


Or dans mon fichier base.php5 a la ligne 4 il n'y a que l'ouverture d'accolade basique.
Je vous met mon fichier base.php comme ca vous verez par vous meme car je ne vois pas du tout d'ou ca pe venir sachant que j'ai essayé tout ce que je pouvais essayer.......

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
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
<?php
class Basededonne
{
public $serveur;   // Voila cette fameuse ligne 4.....
public $util;
public $nombase;
 
public function Basededonne()
{
	$this->serveur="localhost";
	$this->util="root";
	$this->nombase="miniprojo";
}
 
public function connexion()
{
	$bd=mysql_connect($this->serveur,$this->util);
	$ok=mysql_select_db($this->nombase,$bd);
	return $ok;
}
 
public function deconnexion()
{
	mysql_close($this->bd);
}
 
public function requete($sql)
{
	$rqt=mysql_query($sql);
	return $rqt;
}
 
public function affiche($rqt)
{
	$data=mysql_fetch_assoc($rqt);
	return $data;
}
 
public function nombre($rqt)
{
	$nombre=mysql_num_rows($rqt);
	return $nombre;
}
 
}
?>

Voila voila mon gros probleme. En espérant que vous puissiez m'aider car la j'en peux plus....
Merci de m'avoir lu.
michael1984 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 15/12/2006, 11h45   #2
Membre actif
 
Inscription : juillet 2003
Messages : 257
Détails du profil
Informations forums :
Inscription : juillet 2003
Messages : 257
Points : 162
Points : 162
j'ai testé ton script et il n'y a aucun problème.
t'es sur que ca viens pas de ton fichier au tu fais le require?
SegmentationFault est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 15/12/2006, 12h19   #3
Membre émérite

 
Avatar de FCYPBA
 
Inscription : novembre 2004
Messages : 735
Détails du profil
Informations personnelles :
Âge : 33
Localisation : France, Paris (Île de France)

Informations forums :
Inscription : novembre 2004
Messages : 735
Points : 924
Points : 924
Bonjour,

Peut on avoir le message exacte de l'erreur ?

Merci
__________________
Pierre
1. Dans le manuel ( PHP, MySQL,..., rayez la mention inutile), tu te plongeras à deux fois plutôt qu'aucune.
2. Dans la doc php, tu liras attentivement les sections Chaines de caractères, Tableaux et Système de fichiers
3. Un code rapide c'est bien, un code maintenable c'est mieux
...

Why was the font tag an orphan ? Because it didn't have a font-family.
FCYPBA est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 15/12/2006, 12h37   #4
Membre du Club
 
Avatar de pioule
 
Inscription : août 2003
Messages : 65
Détails du profil
Informations forums :
Inscription : août 2003
Messages : 65
Points : 69
Points : 69
Bonjour

Pourrais tu indiquer aussi la manière dont tu crées ton objet ?

Sinon, 3 petites choses que je modifierais dans ta classe :
- j'appellerais la fonction Basededonne() plutôt __construct()
- de la même façon que tu as déclaré $serveur$util,$nombase, je déclarerais aussi $bd (mais en private cette fois)
- et pour ta connexion, $this->bd au lieu de $bd
pioule est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 15/12/2006, 12h50   #5
Invité de passage
 
Inscription : décembre 2006
Messages : 8
Détails du profil
Informations forums :
Inscription : décembre 2006
Messages : 8
Points : 1
Points : 1
merci pour vos reponses..
voila mon fichier ident:

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
28
29
30
31
32
33
 
<?php
 
require("base.php5");
$bd=new Basededonne();
$nom=$_POST["nom"];
$ident=$_POST["motdepasse"];
 
$ok=$bd.connexion();
if(!$ok){echo'erreur';};
 
$sql = 'SELECT `utilisateur`.`nom`, `utilisateur`.`passwd`'
        . ' FROM utilisateur'
        . ' WHERE ((`utilisateur`.`nom` ="'.$nom.'") AND (`utilisateur`.`passwd` ="'.$ident.'")) LIMIT 0, 30';
 
$sql2 = 'SELECT `utilisateur`.`prenom`, `utilisateur`.`nom`'
        . ' FROM utilisateur'
        . ' WHERE (`utilisateur`.`nom` ="'.$nom.'") LIMIT 0, 30';
 
$nombre = $bd.nombre($bd.requete($sql));
$data = $bd.affiche($bd.requete($sql2));
 
if($nombre>0)
{
$_SESSION['ident'] = $ident;
$_SESSION['nom']=$nom;
echo'<p>Bienvenue  '.$data['prenom'].' </p>';
echo('<a href="http://localhost/listeprojet.php">Clique ici pour voir la liste des projets</a>');
}
else echo('<a href="http://localhost/test.htm">identification echoué</a>');
 
 
?>
voila sinon j'ai tester vos differentes remarques mais pas de changement..
Et l'erreur vient bien de ce fichier car j'ai mis un echo avant le require il s'affiche bien, mais par contre si j'en met un apres on le voit pas......

Et sinon l'erreur exacte est :


Parse error: parse error, expecting `T_OLD_FUNCTION' or `T_FUNCTION' or `T_VAR' or `'}'' in c:\program files\easyphp1-8\www\base.php5 on line 4

merci encore
michael1984 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 15/12/2006, 12h51   #6
Expert Confirmé Sénior
 
Avatar de Mr N.
 
Inscription : septembre 2004
Messages : 5 421
Détails du profil
Informations forums :
Inscription : septembre 2004
Messages : 5 421
Points : 5 835
Points : 5 835
Le problème vient du fait que ton script est du PHP5 et tu le fais tourner sur du PHP4...
__________________
Get your motor runnin'
Head out on the highway...
Mr N. est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 15/12/2006, 12h55   #7
Membre du Club
 
Avatar de pioule
 
Inscription : août 2003
Messages : 65
Détails du profil
Informations forums :
Inscription : août 2003
Messages : 65
Points : 69
Points : 69
Essaye en remplaçant tes lignes du type
par
pioule est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 15/12/2006, 12h55   #8
Invité de passage
 
Inscription : décembre 2006
Messages : 8
Détails du profil
Informations forums :
Inscription : décembre 2006
Messages : 8
Points : 1
Points : 1
Non justement au debut je l'enregistrer simplement en ".php" mais cela ne fonctionné pas et un de mes profs ma conseillé d'essayer en l'enregistrant en ".php5" mais bon cela n'a rien changé non plus.
michael1984 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 15/12/2006, 12h57   #9
Invité de passage
 
Inscription : décembre 2006
Messages : 8
Détails du profil
Informations forums :
Inscription : décembre 2006
Messages : 8
Points : 1
Points : 1
Non je viens de le remplacer et toujours rien je comprend vraiment pas...... J'en ai marre......
michael1984 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 15/12/2006, 13h22   #10
Membre du Club
 
Avatar de pioule
 
Inscription : août 2003
Messages : 65
Détails du profil
Informations forums :
Inscription : août 2003
Messages : 65
Points : 69
Points : 69
Retires le ; à la fin de cette ligne :
Code :
if(!$ok){echo'erreur';};
pioule est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 15/12/2006, 13h23   #11
Modérateur
 
Avatar de mathieu
 
Inscription : juin 2003
Messages : 4 893
Détails du profil
Informations forums :
Inscription : juin 2003
Messages : 4 893
Points : 4 466
Points : 4 466
Citation:
Envoyé par Mr N.
Le problème vient du fait que ton script est du PHP5 et tu le fais tourner sur du PHP4...
bien vu !
je viens de faire le test et il me sort exactement le même message d'erreur et la ligne 4

pour voir la version fait un fichier avec "phpinfo" (http://php.developpez.com/faq/?page=...n#conf_phpinfo) et lance une fois avec l'extension ".php" et une fois avec l'extension ".php5"
__________________
Modérateur PHP
mathieu est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 15/12/2006, 13h37   #12
Invité de passage
 
Inscription : décembre 2006
Messages : 8
Détails du profil
Informations forums :
Inscription : décembre 2006
Messages : 8
Points : 1
Points : 1
Je viens de tester ma version de php avec phpinfo et il me dit que je suis en version 4.3.10

J'ai donc tester en ".php" et en ".php5" mais mon erreur est toujours la...
Comment faire pour lui dire que je suis en version 4 ??

Merci pour votre aide.
michael1984 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 15/12/2006, 13h40   #13
Expert Confirmé Sénior
 
Avatar de Mr N.
 
Inscription : septembre 2004
Messages : 5 421
Détails du profil
Informations forums :
Inscription : septembre 2004
Messages : 5 421
Points : 5 835
Points : 5 835
tu dois modifier ton script ! Ton php est en 4.x donc ton script doit etre 4.x
Si tu veux que ton script tourne tel quel, tu dois installer php5
__________________
Get your motor runnin'
Head out on the highway...
Mr N. est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 15/12/2006, 13h40   #14
Membre émérite

 
Avatar de FCYPBA
 
Inscription : novembre 2004
Messages : 735
Détails du profil
Informations personnelles :
Âge : 33
Localisation : France, Paris (Île de France)

Informations forums :
Inscription : novembre 2004
Messages : 735
Points : 924
Points : 924
Pour cela il faut faire une mise à jour de la version de php

Si cela n'est pas possible, il te faudra modifier le script
__________________
Pierre
1. Dans le manuel ( PHP, MySQL,..., rayez la mention inutile), tu te plongeras à deux fois plutôt qu'aucune.
2. Dans la doc php, tu liras attentivement les sections Chaines de caractères, Tableaux et Système de fichiers
3. Un code rapide c'est bien, un code maintenable c'est mieux
...

Why was the font tag an orphan ? Because it didn't have a font-family.
FCYPBA est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 15/12/2006, 14h23   #15
Membre chevronné
 
Inscription : mars 2005
Messages : 583
Détails du profil
Informations forums :
Inscription : mars 2005
Messages : 583
Points : 651
Points : 651
hello,

comme tout le monde l'a dit, tu utilise easyphp et easyphp n'interprete pas php5... et ce meme si tu met une extension .php5 à tes fichiers (il a de droles d'idées ton prof... ).

si tu veux pas changer de version de php :

remplacer les déclarations "public" devant les variables par "var"

var $bidule...

et virer les déclarations public/protected/private devant les fonctions.

si tu dois développer en php5 absolument, installe wamp ou xampp à la place de easyphp

bon courage
Petibidon est actuellement connecté   Envoyer un message privé Réponse avec citation 00
Vieux 15/12/2006, 14h51   #16
Expert Confirmé Sénior
 
Avatar de Mr N.
 
Inscription : septembre 2004
Messages : 5 421
Détails du profil
Informations forums :
Inscription : septembre 2004
Messages : 5 421
Points : 5 835
Points : 5 835
Citation:
Envoyé par Petibidon
il a de droles d'idées ton prof...
J'allais le dire
__________________
Get your motor runnin'
Head out on the highway...
Mr N. est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 15/12/2006, 16h10   #17
Invité de passage
 
Inscription : décembre 2006
Messages : 8
Détails du profil
Informations forums :
Inscription : décembre 2006
Messages : 8
Points : 1
Points : 1
Merci beaucoup pour votre aide et toutes vos réponses claires et rapide.
Je doit m'absenter pour le week end donc je testerais tous ca dimanche.
Je vous tiendrais au courant de l'evolution.
Encore merci.
michael1984 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 17/12/2006, 15h02   #18
Invité de passage
 
Inscription : décembre 2006
Messages : 8
Détails du profil
Informations forums :
Inscription : décembre 2006
Messages : 8
Points : 1
Points : 1
Bonjour a tous voila je suis rentré et j'ai desuite essayé vos remarque scar a vrai dire ca ma travaillé tout le week end.
Donc j'ai essayer la methode qui consisté a enlever tous les publics et a mettre les "var" au debut et tout fonctionne bien.
Je vous remercie donc pour votre aide.
A bientot.
michael1984 est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 09h34.


 
 
 
 
Partenaires

Hébergement Web