code php : erreur

Chez free je sais pas mais il y a certainement une FAQ où tu trouveras ta réponse (et au pire essaies ça coûte rien).. Quand à ton serveur local, c'est écris dans la doc MySQL, il s'agit de root pour le user et rien du tout pour le password. Pour définir un mdp en local voilà ce qu'il faut faire :

http://forums.macg.co/vbulletin/showthread.php?t=108142 (y m'a même pas répondu ce yochi)
 
iMatthieu a dit:
Chez free je sais pas mais il y a certainement une FAQ où tu trouveras ta réponse (et au pire essaies ça coûte rien).. Quand à ton serveur local, c'est écris dans la doc MySQL, il s'agit de root pour le user et rien du tout pour le password. Pour définir un mdp en local voilà ce qu'il faut faire :

http://forums.macg.co/vbulletin/showthread.php?t=108142 (y m'a même pas répondu ce yochi)

Je suis complètement largé avec ces user, nom et autre pass. Sur la faq de free je lis ceci :
host 'sql.free.fr'
user 'votre_login'
pass 'votre_mot_de_passe'
base 'votre_login'

Après essais divers, chez free c'est donc :

arg1= sql.free.fr
arg2= NOM
arg3= mot de passe

Mais est ce que Nom= user ?

Albert
 
Halbert a dit:
Je suis complètement largé avec ces user, nom et autre pass. Sur la faq de free je lis ceci :
host 'sql.free.fr'
user 'votre_login'
pass 'votre_mot_de_passe'
base 'votre_login'

Mais par exemple dans mysql_pconnect(arg 1, arg2, arg 3) , je croyais avoir compris que :

arg1= SERVEUR
arg2= NOM
arg3= Password

Est ce que Nom= user ?

Albert

Bonjour,
En effet, lorsque tu te connectes via une fonction telle que mysql_pconnect() (je te conseillerais d'ailleurs plus mysql_connect()), il te demande en premier argument ton serveur/host, ton nom d'utilisateur sur la base de données => user et ton mot de passe.

La base n'est selectionnée qu'ultérieurement avec une autre fonction php.

Si il t'arrive de te perdre avec certaines fonctions php (ce qui arrive à tout à chacun) je ne peux te conseiller meilleure chose que de mettre dans tes favoris le site officiel de php pour pouvoir mieux analyser les choses.

Par exemple pour mysql_connect() tu peux aller voir ici, certes c'est du traduit mais ça donne une assez bonne idée.
 
  • J’aime
Réactions: molgow
Beroth a dit:
Bonjour,
En effet, lorsque tu te connectes via une fonction telle que mysql_pconnect() (je te conseillerais d'ailleurs plus mysql_connect()), il te demande en premier argument ton serveur/host, ton nom d'utilisateur sur la base de données => user et ton mot de passe.

La base n'est selectionnée qu'ultérieurement avec une autre fonction php.

Si il t'arrive de te perdre avec certaines fonctions php (ce qui arrive à tout à chacun) je ne peux te conseiller meilleure chose que de mettre dans tes favoris le site officiel de php pour pouvoir mieux analyser les choses.

Par exemple pour mysql_connect() tu peux aller voir ici, certes c'est du traduit mais ça donne une assez bonne idée.

Merci....
 
Encore et encore...

Pourquoi le même script de connexion à ma base fonctionne quand il est appelé directement et ne fonctionne pas quand il appelé par un formulaire ?

Albert
 
Beroth a dit:
Je ne saisis pas très bien ce que tu entends par "appelé par un formulaire", pourrais-tu expliciter s'il te plait ?

la page php où se trouve le script est appelé par l'attribut ACTION du formulaire.

Albert
 
Je m'en doute bien, et ?


Si je comprends bien la connexion ne se fait pas ?

Pourtant si tu procèdes de la même façon ça devrait marcher, si tu le peux montre juste le bout de code de la page de réception du formulaire, je suis sûr qu'il s'agît d'une erreur d'étourderie.
 
Beroth a dit:
Je m'en doute bien, et ?


Si je comprends bien la connexion ne se fait pas ?

Pourtant si tu procèdes de la même façon ça devrait marcher, si tu le peux montre juste le bout de code de la page de réception du formulaire, je suis sûr qu'il s'agît d'une erreur d'étourderie.

Oui je vais te copier le code : mais pourquoi ça marche dans un cas et pas dans l'autre ?
 
Halbert a dit:
Oui je vais te copier le code : mais pourquoi ça marche dans un cas et pas dans l'autre ?

Voilà , d'après le livre de Rigaux chez O'Reilly

<?php

print ('Votre nom est : '.$_POST['nom']);

require ("Connect.php");
$connexion = mysql_pconnect (SERVEUR, NOM, PASSE);
if (!connexion)
{ echo "D&#381;sol&#381;, connexion &#710; ". SERVEUR ."impossible\n";
exit;
}
if (!mysql_select_db (BASE, $connexion))
{
"DÈsolÈ, acc&#143;s &#710; la base ". BASE ."impossible\n";
exit;
}
$resultat = mysql_query ("SELECT * FROM TS1", $connexion);
if ($resultat)
{
while ($ligne = mysql_fetch_object ($resultat))
{
echo " Les rÈsultats de $ligne->Prenom $ligne->Nom sont : $ligne->N1 , $ligne->N2, $ligne->N3 . <br> \n";
}
}
else
{
echo "<B> Erreur dans l'exÈcution de la requ&#144;te. </B> <br>";
echo "<B> Message de MySQL : </B> ". mysql_error($connexion);
} ?>
 
Beroth a dit:
Il te retourne une erreur ?

Que te retourne-t-il ?

Il me retourne :

Warning: mysql_pconnect(): Access denied for user 'xxx.yyy'@'212.27.40.201' (using password: YES) in /var/www/free.fr/1/1/xxx.yyy/exmyphp2.php on line 15

Warning: mysql_select_db(): supplied argument is not a valid MySQL-Link resource in /var/www/free.fr/1/1/xxx.yyy/exmyphp2.php on line 20

Albert
 
$connexion = mysql_pconnect (SERVEUR, NOM, PASSE); => $connexion = mysql_pconnect ($SERVEUR, $NOM, $PASSE);

peut-être ?

edit:

au fait,

if (!connexion) => if (!$connexion)
 
Beroth a dit:
$connexion = mysql_pconnect (SERVEUR, NOM, PASSE); => $connexion = mysql_pconnect ($SERVEUR, $NOM, $PASSE);

peut-être ?

edit:

au fait,

if (!connexion) => if (!$connexion)

Bien vue déjà l'erreur grossière de l'oubli de $.

Ca élimine un message d'erreur.

Avec mysql_pconnect ($SERVEUR, $NOM, $PASSE); je récupère :Désolé, connexion &#710; sql.free.frimpossible

Albert
 
Peut-être tes variables sont-elles en minuscule à la base ?

Il faut savoir que les noms de variables en php sont très sensibles à la casse (minuscule/majuscule).
 
Beroth a dit:
Peut-être tes variables sont-elles en minuscule à la base ?

Il faut savoir que les noms de variables en php sont très sensibles à la casse (minuscule/majuscule).

Mais ce script marche parfaitement quand je lance la page php où il se trouve. Comment peut-il ne plus fonctionner quand la page est celle d'un tratement d'un formulaire ?

Mystère !

Albert
 
Question : est-ce que les variables définies dans le formulaire peuvent interférer avec celles définies dans la base de données ? Exemple "nom" dans le formulaire et "nom" comme champ dans bdd ?

Albert
 
A partir du moment où les variables transmises via un formulaire sont GET ou POST et que celles de ta base de données sont extraites le plus courrement avec un array, à moins de nommer ton array $_POST ou $_GET (et encore, il me semble que ce ne soit pas possible) je ne vois pas trop non.
 
Beroth a dit:
A partir du moment où les variables transmises via un formulaire sont GET ou POST et que celles de ta base de données sont extraites le plus courrement avec un array, à moins de nommer ton array $_POST ou $_GET (et encore, il me semble que ce ne soit pas possible) je ne vois pas trop non.

J'ai changé de script et maintenant tout fonctionne. Je comprendrai plus tard !

Albert