Bonjour,
j'ai une classe Pays, et une classe MySQL qui me renvoy un tableau array de la liste de tout les pays present en base.
j'arrive pas gere ces classe pour pouvoir alimenter une liste deroulante sur un formulaire :
voici mon code :
vive PHP !!!, vive la prog !!!
liste deroulante de mon formulaire :
<td>
<div class="attributename">Pays</div></td>
<td class="attributeinput">
<select name="pays">
<?
include("../classes/mysql.class.php");
include("../classes/pays.class.php");
$tab_pays = pays::list_all();
while ($tab_pays)
{
echo "<option>".$tab_pays["nom_pays"]."</option>\n";
}
?>
</select>
</tr>
<tr>
classe pays :
<?php
class pays extends mysql
{
//listage de tout les pays present en base
var $id;
var $nom_pays
function pays($id)
{
// recuperation des variables
}
function list_all()
{
$querry="SELECT nom_pays FROM pays ORDER BY nom_pays ASC";
$resulult=requete($querry);
return $resulult;
}
}
?>
classe Mysql :
<?php
class mysql
{
var $sql_serveur;
var $sql_utlisateur;
var $sql_password;
var $sql_bd;
var $connection_sql;
var $select_bd;
var $resultat;
var $sql_debug;
var $connection_verif;
var $nb_requete;
var $erreur;
var $message_erreur;
//constructeur
function mysql($serveur, $utlisateur, $password, $bd, $debug, $erreur)
{
$this->sql_serveur = $serveur;
$this->sql_utilisateur = $utlisateur;
$this->sql_password = $password;
$this->sql_bd = $bd;
$this->sql_debug = $debug;
$this->message_erreur = $erreur;
$this->resultat = array();
$this->connection_verif = 0;
$this->connection();
}
//fonction de connecti+on a mysql
function connection()
{
if($this->connection_verif == "0")
{
$this->connection_sql = @mysql_connect($this->sql_serveur, $this->sql_utilisateur, $this->sql_password);
if(!$this->connection_sql)
{
$this->mysql_erreur();
}
else
{
$this->selection_bd();
}
}
}
//fonction de selection de la base de donnée
function selection_bd()
{
$this->select_bd = @mysql_select_db($this->sql_bd, $this->connection_sql);
if(!$this->select_bd)
{
$this->mysql_erreur();
}
else
{
$this->connection_verif = 1;
}
}
//fonction de déconnexion de la base de donnée
function deconnexion()
{
mysql_close($this->connection_sql);
}
//fonction d'execution de requête
function requete($requete, $p)
{
$this->resultat[$p] = mysql_query($requete);
$this->nb_requete++;
if(!$this->resultat[$p])
{
$this->mysql_erreur();
}
}
//fontion qui retourne les donnée dans un tableau grace a fetch array
function resultat($p)
{
return @mysql_fetch_array($this->resultat[$p]);
}
//fontion qui retourne une ligne de résultat MySQL sous la forme d'un objet
function resultat_object($p)
{
return @mysql_fetch_object($this->resultat[$p]);
}
//fontion qui retourne une ligne de résultat MySQL sous la forme d'un tableau associatif
function resultat_assoc($p)
{
return @mysql_fetch_assoc($this->resultat[$p]);
}
//fonction permettant de compter le nombre de resultat trouvé
function nb_resultat($p)
{
return @mysql_num_rows($this->resultat[$p]);
}
//function d'affichage des erreur mysql
function mysql_erreur()
{
if($this->sql_debug == 0)
{
echo $this->message_erreur;
}
elseif($this->sql_debug == 1)
{
$this->erreur = @mysql_error($this->connection_sql);
$message = "une erreur mysql est survenue : <br /> <form name='mysql'><textarea rows='15' cols='60'>".$this->erreur."</textarea></form>";
echo $message;
}
}
}
/*
--__Information sur la classe__--
connection : automatique
deconnection : $sql->deconnexion()
requete : $sql->requete($requete,$p)
fetch_array : $sql->resultat($p)
$p es numero de la requette
nb_resultat : sql->nbresultat($p)
nb de requete :$sql->nb_requete
*/
?>
je debute en objet avec php je suis larguer, si vous pouviez m'aider ce serais cool.
Merci