Formation par Olivier Duffez

Formation au référencement par Olivier Duffez, créateur de WebRankInfo !
Une formule efficace alliant théorie et pratique, avec une haute disponibilité des intervenants
Cette formule a déjà convaincu plusieurs centaines d'entreprises, pourquoi pas vous ?
Réservez vite votre place en ligne (convention possible pour imputer sur le budget formation)

Formation référencement Marseille

Communication PHP <-> base de donnée

Poster un nouveau sujet Imprimer cette discussion    Forum -> Développement d'un site Web   Les dernières discussions de ce forum sont disponibles au format RSS
Voir le sujet précédent :: Voir le sujet suivant  
Auteur Message
 
Steph012
Nouveau WRInaute

Inscrit le: 16 Avr 2007
Messages: 40

URL permanente de ce messagePosté le : Mar Mai 15, 2007 22:27    Sujet du message: Communication PHP <-> base de donnée

Bonjour à tous,

Je ne comprends vraiment pas ... je souhaite à partir de mon application flash communiquer avec ma base de donnée, pour cela j'utilise le php.
Je vais ajouter du code actionscript ici alors j'espère ne pas me tromper de forum, mais je pense que mon pb est dans le php.
L'idée est de faire une requete sql pour récupérer l'id d'un utilisateur.
Dans l'exemple le userename (utilisateur) se nomme "Gourde" et je souhaite récupèrer son id.

J'ai une base de donnée tout simple avec 2 champs
nom de la base : users
nom du champ1:usename
nom du champ2:userid

Voici le code coté actionscript:
Code:

   PhpObject.username="Gourde";
   PhpObject.userid="";
   PhpObject.onLoad=function(success){
   if(success){
      if(this.error != undefined){
         trace("DB error sent by php");
      }
      else{
         New_Username = PhpObject.username;
         New_id = PhpObject.userid;
         trace("DB connection database OK");
      }
   }
   else{
      trace("DB failed php connection");
   }
   }
   PhpObject.sendAndLoad("http://myip/myphp.php",PhpObject,"POST");


Et voici donc le code coté php (myphp.php)
Code:

if(!empty($_POST['username'])){
   $res=mysql_query("SELECT username FROM users WHERE username='".$_POST['username']."'") or die("&error=".mysql_error()."&");      if(mysql_num_rows($res)==1){
      $row=mysql_fetch_object($res);
      // ENVOIE LA VALEUR DE L'ID DANS FLASH
      echo "&userid=".$row->userid."&";
   }
   else{
      echo "&error=User/pwd invalide&";
  }
}
else{
  echo "&error=Vous devez fournir le user et le pwd&";
}


Donc si j'explique un peu le code comme je l'ai compris. A partir du code actionscript, on initialise le username recherché à Gourde.
Code:
PhpObject.username="Gourde"

Cette valeur sera transmise par le sendandload à la fin du code actionscript.
Coté php, on exécute la requete sql et on renvoie la valeur de l'id normalement lu à l'actionscript par l'"echo"
Code:
"&userid=".$row->userid."&";

row->userid : étant le nom du champ dans le base donnée
userid : étant le nom de lavaribale coté actionscript
Cette valeur est sauvegardée dans la variable New_id, enfin normalement car là je ne vois rien ...

Pourquoi la requete sql ne me permet pas de lire la valeur de l'id ? Vous trouvez une erreur de raisonnement ? une erreur d'implémentation ?

J'espère avoir été clair, demandez moi svp plus de précisions si nécessaire.

Merci beaucoup beaucoup

Steph (pas simple les débuts .. grrr)
 
Steph012
reglysse
WRInaute occasionnel
WRInaute occasionnel

Inscrit le: 19 Avr 2006
Messages: 137
Localisation: Paris

URL permanente de ce messagePosté le : Mer Mai 16, 2007 11:34    Sujet du message: Communication PHP <-> base de donnée

Ta requête SQL ne renvoie pas le "userid".

Il faut la modifier :

Code:

$res=mysql_query("SELECT username, userid FROM users WHERE username='".$_POST['username']."'") or die("&error=".mysql_error()."&");


Il y a peut-être d'autres bugs mais déjà tu peux tester comme ça.
 
reglysse Visiter le site web du posteur
Steph012
Nouveau WRInaute

Inscrit le: 16 Avr 2007
Messages: 40

URL permanente de ce messagePosté le : Mer Mai 16, 2007 18:52    Sujet du message: Communication PHP <-> base de donnée

reglysse, merci vraiment beaucoup je ne pensais vraiment pas qu'il était nécessaire d'ajouter le userid dans le requete sql, j'avais mal compris.
Grace à toi, mon application fonctionne, il semble que c'était le seul bug Wink
Encore merci

Steph
 
Steph012
 
Montrer les messages depuis:   
Revenir en haut    Forum -> Développement d'un site Web Toutes les heures sont au format GMT + 2 Heures
Page 1 sur 1 - 
Connexion
Nom d'utilisateur:    Mot de passe:      Se connecter automatiquement à chaque visite    

Définitions :

CLIQUEZ ICI pour vous inscrire à WebRankInfo (forum, annuaire, outils...)

Connexion

© 2001-2005 phpBB Group, support français
Personnalisation : WebRankInfo ™


 ODP  Firefox  Alsacreations  annuaire webmaster Yagoort