Php site perso chez free; pb accès à la BD
Résolu/Fermé
A voir également:
- Php site perso chez free; pb accès à la BD
- Site de telechargement - Guide
- Il est en cours de transport vers votre site de livraison ✓ - Forum Consommation & Internet
- Site inaccessible - Guide
- Télécharger bd pdf gratuit sans inscription - Forum Loisirs / Divertissements
- Site de vente entre particulier - Guide
5 réponses
Apaachee
Messages postés
248
Date d'inscription
mardi 13 novembre 2007
Statut
Membre
Dernière intervention
25 août 2011
47
3 janv. 2009 à 17:49
3 janv. 2009 à 17:49
Pour commencer, met ton code entre balises , ca simplifie la lecture.
Ensuite,
Ton code est entier ? Si oui, il faut dabord que tu te connectes à ta BD.
Ensuite,
$select="SELECT count(nom) FROM restaurants"; $result = mysql_query($select); $row = mysql_fetch_row($result); $nb = $row[0];
Ton code est entier ? Si oui, il faut dabord que tu te connectes à ta BD.
Bonjour
Si ça marchait en local, ça peut être un problème de casse : ta table s'appelle-t-elle bien restaurants en minuscules ?
Quelle que soit l'erreur, tu auras des précisions en affichant le message d'erreur :
$result = mysql_query($select) or die (mysql_error());
Si ça marchait en local, ça peut être un problème de casse : ta table s'appelle-t-elle bien restaurants en minuscules ?
Quelle que soit l'erreur, tu auras des précisions en affichant le message d'erreur :
$result = mysql_query($select) or die (mysql_error());
oui ma table s'écrit ien comme ça, il n'y a pas d'erreur de casse.
En retestant apres modif, il me sort cette erreur :
Impossible de se connecter
Je ne comprend pas trop; voici la structure de mon fichier connecter.phph, qui doit se connecter à ma base :
En retestant apres modif, il me sort cette erreur :
Impossible de se connecter
Je ne comprend pas trop; voici la structure de mon fichier connecter.phph, qui doit se connecter à ma base :
<?php /* Fichier connecter.php ici les parametres pour la connexion 1)pour connexion Distante sur serveur MYSQL de free ---------------------------------------------------- $serveur="sql.free.fr"; $utilisateur ="webprogression"; //chez free l'utilisateur et la base ont le meme nom $passe="Votre mot de passe de chez free"; $base="webprogression"; 2)pour connexion Locale sur serveur MYSQL de ma machine -------------------------------------------------------- $serveur="localhost"; $utilisateur ="root"; $passe=""; $base="webprogression"; */ # FileName="Connection_php_mysql.htm" # Type="MYSQL" # HTTP="true" $hostname_connecter = "sql.free.fr"; $database_connecter = "moi"; $username_connecter = "moi"; $password_connecter = "monpass"; //effectuer la connexion à MYSQL $link = mysql_connect("$serveur","$utilisateur","$passe") or die ("Impossible de se connecter").mysql_error(); //sélectionner la base de données de Mysql (locale ou distante) mysql_select_db ("$base") or die ("Impossible d'accéder à la base de données"); ?>
mysql_connect("$serveur","$utilisateur","$passe")
où les variables $serveur, etc sont-elles initialisées ? Celles que tu initialises s'appellent $hostname_connecter, etc..
D'ailleurs (mais ça n'est pas ça qui empêche de marcher) à quoi peuvent bien servir les guillemets autour de "$serveur", "$utilisateur" et "$passe" ???
où les variables $serveur, etc sont-elles initialisées ? Celles que tu initialises s'appellent $hostname_connecter, etc..
D'ailleurs (mais ça n'est pas ça qui empêche de marcher) à quoi peuvent bien servir les guillemets autour de "$serveur", "$utilisateur" et "$passe" ???
Ca s'est arrangé; c'était en effet un souci de nom de variable!
Donc là je vois qu'il se conencte bien à ma base de données.
par contre, il y a toujours un souci avec l'exécution de requetes à certains moments :
Erreur :
Warning: mysql_fetch_row(): supplied argument is not a valid MySQL result resource in /mnt/102/sdb/c/4/letyz12/vis/vis_resultat.php on line 276
Voici une aprtie du code ou cela plante par ex :
$select="SELECT count (nom) FROM restaurants WHERE nom LIKE '%$nom%' AND cuisine= \"$cuisine\"";
$result = mysql_query($select);
$row = mysql_fetch_row($result);
$nb = $row[0];
Peut-etre ya til un souci de ' ou " dans ma requete ?
Donc là je vois qu'il se conencte bien à ma base de données.
par contre, il y a toujours un souci avec l'exécution de requetes à certains moments :
Erreur :
Warning: mysql_fetch_row(): supplied argument is not a valid MySQL result resource in /mnt/102/sdb/c/4/letyz12/vis/vis_resultat.php on line 276
Voici une aprtie du code ou cela plante par ex :
$select="SELECT count (nom) FROM restaurants WHERE nom LIKE '%$nom%' AND cuisine= \"$cuisine\"";
$result = mysql_query($select);
$row = mysql_fetch_row($result);
$nb = $row[0];
Peut-etre ya til un souci de ' ou " dans ma requete ?
En essayant le $result = mysql_query($select) or die (mysql_error()); ,
Il me sort : FUNCTION letyz12.count does not exist
C'est bizarre; j'explique vite fait comment fonctionne ma page :
En fait, l'utilisateur peut rechercher des restaurants par le nom (saisie manuelle dans une zone de texte) ET/OU par un type de cuisine (sélection dans une zone de liste) ET/OU par prix (également sélection dans une zone de liste)
Bizarrement, ya un souci dès que le nom tapée par l'utilisateur, s'il y en a un, entre en jeu.
Sinon,cela marche bien.
Il me sort : FUNCTION letyz12.count does not exist
C'est bizarre; j'explique vite fait comment fonctionne ma page :
En fait, l'utilisateur peut rechercher des restaurants par le nom (saisie manuelle dans une zone de texte) ET/OU par un type de cuisine (sélection dans une zone de liste) ET/OU par prix (également sélection dans une zone de liste)
Bizarrement, ya un souci dès que le nom tapée par l'utilisateur, s'il y en a un, entre en jeu.
Sinon,cela marche bien.
c'est bon je viens de trouver la solution :
en fait, j'écrivais select count (nom) avec un espace entre "count" et (nom) alors qu'il n'en faut pas..
Cependant, décidément, j'en aurais vu, un autre problème est présent.
Sur mon site, il y aune zone dite "Accès membre" ou l'on peut se connecter avec un nom d'uilisateur et un mot de passe.
Voici l'erreur affichée lorsque je me connecte (a fortiori normalement correctement):
Warning: main() [function.main]: open_basedir restriction in effect. File(../connecter.php) is not within the allowed path(s): (/mnt/102/sdb/c/4/letyz12) in /mnt/102/sdb/c/4/letyz12/fct/fct_menu.inc.php on line 3
Warning: main(../connecter.php) [function.main]: failed to open stream: Operation not permitted in /mnt/102/sdb/c/4/letyz12/fct/fct_menu.inc.php on line 3
Fatal error: main() [function.require]: Failed opening required '../connecter.php' (include_path='/mnt/102/sdb/c/4/letyz12/include:.:/usr/php4/lib/php') in /mnt/102/sdb/c/4/letyz12/fct/fct_menu.inc.php on line 3
Voici le fichier fct_menu.inc.php dont il est question :
L'erreur a vraisemblablement lieu au require (../connecter.php); l'appel me semble prtant bon, identique aux autres..
en fait, j'écrivais select count (nom) avec un espace entre "count" et (nom) alors qu'il n'en faut pas..
Cependant, décidément, j'en aurais vu, un autre problème est présent.
Sur mon site, il y aune zone dite "Accès membre" ou l'on peut se connecter avec un nom d'uilisateur et un mot de passe.
Voici l'erreur affichée lorsque je me connecte (a fortiori normalement correctement):
Warning: main() [function.main]: open_basedir restriction in effect. File(../connecter.php) is not within the allowed path(s): (/mnt/102/sdb/c/4/letyz12) in /mnt/102/sdb/c/4/letyz12/fct/fct_menu.inc.php on line 3
Warning: main(../connecter.php) [function.main]: failed to open stream: Operation not permitted in /mnt/102/sdb/c/4/letyz12/fct/fct_menu.inc.php on line 3
Fatal error: main() [function.require]: Failed opening required '../connecter.php' (include_path='/mnt/102/sdb/c/4/letyz12/include:.:/usr/php4/lib/php') in /mnt/102/sdb/c/4/letyz12/fct/fct_menu.inc.php on line 3
Voici le fichier fct_menu.inc.php dont il est question :
<?php session_start(); ?> <?php require("../connecter.php"); /********************************************************************************************/ function verif ($log, $pwd, $droit) { $rqt = "SELECT droit FROM profils WHERE login ='$log' AND pass='$pwd'"; $res = mysql_query($rqt); $profil_courant = mysql_fetch_object($res); $droit=$profil_courant->droit; return $droit; } function menu_admin () { echo " <table> <tr> <td class=\"td25\"></td> <td class=\"td75\"><a href=../admin/profils.php>Gestion des profils</a><br></td> </tr> </table>"; } /***************************************************************************************************************************/ function menu_sec () { echo " <table> <tr> <td class=\"td25\"></td> <td class=\"td75\"><a href=../sec/sec_profils.php>Les profils</a><br></td> </tr> <tr> <td class=\"td25\"></td> <td class=\"td75\"><br></td> </tr> <tr> <td class=\"td25\"></td> <td class=\"td75\"><a href=../sec/messages.php>Gestion des messages du livre d 'or</a><br></td> </tr> <tr> <td class=\"td25\"></td> <td class=\"td75\"><br></td> </tr> </table>"; } /***************************************************************************************************************************/ function menu_adh () { echo " <table> <tr> <td class=\"td25\"></td> <td class=\"td75\"><a href=../adh/adh_profils.php>Les profils</a><br></td> </tr> <tr> <td class=\"td25\"></td> <td class=\"td75\"><br></td> </tr> <tr> <td class=\"td25\"></td> <td class=\"td75\"><a href=../adh/restaurants.php>Gestion des restaurants</a><br></td> </tr> <tr> <td class=\"td25\"></td> <td class=\"td75\"><br></td> </tr> </table>"; } /***************************************************************************************************************************/ function menu_vis () { echo " <table> <tr> <td class=\"td25\"></td> <td class=\"td75\"><a href=../vis/vis_rech.php>Rechercher un restaurant</a><br></td> </tr> <tr> <td class=\"td25\"></td> <td class=\"td75\"><br></td> </tr> <tr> <td class=\"td25\"></td> <td class=\"td75\"><a href=../vis/vis_livre_or.php>Livre d'or</a><br></td> </tr> <tr> <td class=\"td25\"></td> <td class=\"td75\"><br></td> </tr> </table>"; } ?>
L'erreur a vraisemblablement lieu au require (../connecter.php); l'appel me semble prtant bon, identique aux autres..
Avec un nom comme ça, fct_menu.inc.php est sûrement un fichier inclus.
Dans ce cas, le répertoire courant est celui du script, c'est à dire du fichier principal, pas celui de fct_menu.inc.php.
Si ce fichier est à la base de ton site, pour inclure connecter.php, comme ils sont dans le même répertoire, il faut faire simplement require("connecter.php"), pas require("../connecter.php"). Même si le require, lui, se trouve dans un fichier qui est dans un sous-répertoire.
Dans ce cas, le répertoire courant est celui du script, c'est à dire du fichier principal, pas celui de fct_menu.inc.php.
Si ce fichier est à la base de ton site, pour inclure connecter.php, comme ils sont dans le même répertoire, il faut faire simplement require("connecter.php"), pas require("../connecter.php"). Même si le require, lui, se trouve dans un fichier qui est dans un sous-répertoire.
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Mon fichier fct_menu.inc.php est bien un fichier que j'inclue e til n'est pas direct sous laracine du site mais dans un sous-repertoire
malgré des améliorations, ya toujours des bugs; le mieux est que je mette tous mes fichiers sous la racine du site et modifie mes appels aux pages.
Je vais voir ce que cela donne.
malgré des améliorations, ya toujours des bugs; le mieux est que je mette tous mes fichiers sous la racine du site et modifie mes appels aux pages.
Je vais voir ce que cela donne.
3 janv. 2009 à 18:06
voici une partie du code avec en gras les lignes ou ça plante :