Je fais des tests en POO PHP .Mais j'ai un soucis probablement syntaxique que j'arrive pas résoudre.
Voici le bout de code :
class perso
{
public $pv;
public $force;
public $dexterite;
public $intelligence;
public $sagesse;
public $nom;
function bdd($type)
{
echo "Bonjour ".$type."<br><br>";
mysql_connect("localhost","root","")or die('pas connecte');
mysql_select_db("testjeu")or die('pas acces a la base');
$reponse=mysql_query("SELECT pvs,forcep,dexterite FROM perso WHERE nom LIKE '%$type%' "); // mon probleme se situe la je pense '%$type%'
$donnees = mysql_fetch_array($reponse);
$this->force=$donnees['forcep'];
$this->dexterite=$donnees['dexterite'];
$this->intelligence=$donnees['intelligence'];
$this->sagesse=$donnees['sagesse'];
$this->pv=$donnees['pvs'];
echo "Force ".$type." : ".$this->force."<br><br>";
echo "dexterite ".$type." : ".$this->dexterite."<br><br>";
echo "PV ".$type." : ".$this->pv."<br><br>";
}
public function degatp($force,$armurem,$rand)
{
$this->degat=($force+$rand)-$armurem;
return $this->degat;
}
}
En fait ce code marche quand je fait $perso1=new perso();
$perso1->bdd(nomdejadansmabdd);
Mais j'aimerais faire en sorte de pouvoir faire un $nom=$_POST['name'];
$perso1->bdd($nom);
Et la ça transmet bien ma variable $nom mais ça va pas me chercher les valeurs dans la base de donnée.Ca me retourne aucune erreur j'ai juste genre Force nomdujoueur : et rien du tout.Bien entendu la personne est au prealable inscrite dans ma BDD avec des valeurs pour chaque variable.
Il est probable que mon code soit inutile mais je cherche a manipuler les choses .
Merci a ceux qui se pencherons sur le probleme .
Voici le bout de code :
class perso
{
public $pv;
public $force;
public $dexterite;
public $intelligence;
public $sagesse;
public $nom;
function bdd($type)
{
echo "Bonjour ".$type."<br><br>";
mysql_connect("localhost","root","")or die('pas connecte');
mysql_select_db("testjeu")or die('pas acces a la base');
$reponse=mysql_query("SELECT pvs,forcep,dexterite FROM perso WHERE nom LIKE '%$type%' "); // mon probleme se situe la je pense '%$type%'
$donnees = mysql_fetch_array($reponse);
$this->force=$donnees['forcep'];
$this->dexterite=$donnees['dexterite'];
$this->intelligence=$donnees['intelligence'];
$this->sagesse=$donnees['sagesse'];
$this->pv=$donnees['pvs'];
echo "Force ".$type." : ".$this->force."<br><br>";
echo "dexterite ".$type." : ".$this->dexterite."<br><br>";
echo "PV ".$type." : ".$this->pv."<br><br>";
}
public function degatp($force,$armurem,$rand)
{
$this->degat=($force+$rand)-$armurem;
return $this->degat;
}
}
En fait ce code marche quand je fait $perso1=new perso();
$perso1->bdd(nomdejadansmabdd);
Mais j'aimerais faire en sorte de pouvoir faire un $nom=$_POST['name'];
$perso1->bdd($nom);
Et la ça transmet bien ma variable $nom mais ça va pas me chercher les valeurs dans la base de donnée.Ca me retourne aucune erreur j'ai juste genre Force nomdujoueur : et rien du tout.Bien entendu la personne est au prealable inscrite dans ma BDD avec des valeurs pour chaque variable.
Il est probable que mon code soit inutile mais je cherche a manipuler les choses .
Merci a ceux qui se pencherons sur le probleme .