Utiliser donnée table Mysql en variable php

Résolu
Bonjour,

Je souhaiterais savoir comment faire pour récupérer une donnée d'une table mysql pour ensuite l'utiliser comme variable php.
La table iConomy se présente sous la forme:
id : *****
username : ***** 
balance: *****
hidden : 0 

Avec un formulaire php je récupère l'username:
<form method="post" action="allopo.php"> 
Pseudo: <input type="text" name="Pseudo" size="45" /> <br /> 
<input type="submit" value="Confirmer" /> 
</form>


Ensuite je me connecte à la base sur une autre page:
<?php 
//Reportage erreures php 
error_reporting(E_ALL); 
//Infos Database 
$dbhost = 'db4free.net'; 
$dbuser = 'iteush'; 
$dbpass = '5Hapower'; 
$dbname = 'minesword'; 
$dbtable = 'iConomy'; 
//Connexion à la base 
$player = $_POST['Pseudo']; 
$conn = mysql_connect ($dbhost, $dbuser, $dbpass) or die ('Error: ' . mysql_error()); 
mysql_select_db($dbname) or die(mysql_error()) ; 
$query = "SELECT * FROM 'iConomy'"; 
$result = mysql_query($query, $link) or die($query . " - " . mysql_error()); 
?> 


Mais après je suis bloqué, comment faire pour récupérer la valeur id de la table, le nom de l'utilisateur grâce au formulaire , ajouter 500 à balance et 0 à hidden, ou alors ajouter 500 à balance ?

Merci d'avance :)

édit : infos perso.

4 réponses

  1. Merci :D
    Sauf que maintenant j'obtiens ça
    Notice: Undefined index: id in /var/www/site/site.com/blabla.php on line 17


    Blala.php est la page où j'ai mit le code, le formulaire est sur une autre. Est-ce la cause du bug ?
    1. ben ça dépend , tu dois passer par le formulaire pour qu'il n'y ait pas d'erreur , c'est grâce à la valeur de l'input que le php peut faire ses requêtes .
      donc soit tu as été sur la page sans passer par le formulaire soit c'est autre chose .
      la page allopo.php c'est quoi ? c'est l'ancien blabla.php ?
    2. Ouais j'ai oublié de changer. Le problème c'est que l'erreur s'affiche quand je valide mon pseudo dans le formulaire. :/
    3. dans cette ligne :

      mysql_query("UPDATE iConomy SET balance=balance+500 WHERE id=".$row['id']);

      remplaces $row['id'] par $row[0]
    4. Parfait ça marche nickel merci. :)
      Dernière petite question, comment je fait pour faire ensuite une redirection sans obtenir
      Headers already sent by
      ?
    5. tu peux utiliser la fonction header que si aucune donnée n'a déjà été envoyé et afficher dans le navigateur , ce qui veut dire que tu ne dois pas faire d'echo ou même mettre le <html> avant de l'exécuter sinon tu auras cette erreur .
      tu peux faire une redirection en javascript ou simplement en html avec un meta refresh .
  2. dans la ligne :

    $result = mysql_query($query, $link) or die($query . " - " . mysql_error());

    tu utilises la variable $link alors que ça devrait être $conn
    1. Ah oui les identifiants, j'y avais pensé en plus. -.-
      Merci pour ton code mais quand je met mon pseudo dans le formulaire j'obtient:
      Notice: Undefined variable: link in /var/www/site/site.com/blabla.php on line 15 
      
      Warning: mysql_query(): supplied argument is not a valid MySQL-Link resource in /var/www/site/site.com/allopo.php on line 15 
      SELECT * FROM iConomy WHERE pseudo='iTeush' -


      Comment résoudre ça ?
      Merci d'avance :)
      1. Fais attention tu as laisser tes identifiants de connexion dans ton post ! modifies ça !

        Sinon par rapport à ton problème

        modifies :

        $query = "SELECT * FROM 'iConomy'";

        par

        $query = "SELECT * FROM iConomy WHERE pseudo='".$player."'";

        comme ça on aura que les informations du membre qui s'appelle selon l'input .

        et ensuite rajoutes à la suite de ton code :

        $row = mysql_fetch_row($result); /* pour ne récuperer qu'une seule ligne , pour en récuperer plusieurs on utilise mysql_fetch_array */

        echo 'Salut'. $row['username'] . ' ta balance est de ' . $row['balance'] . 'on va y ajouter 500';

        mysql_query("UPDATE iConomy SET balance=balance+500 WHERE id=".$row['id']); /* on ajoute 500 a la balance qu'il y a dans la bdd pour le joueur ayant l'id qu'on a récuperer dans la bdd , on pouvait le faire avec pseudo mais il est mieux d'utiliser la clé primaire . */