Problème lié à l'absance d'une table.
Posté : 19 mai 2007, 14:13
Bonjour,
Voila j'ai creer (disons que j'ai vaguement modifier un petit site internet) un petit site internet...
Donc quand on est sur la page d'accueil du site on peux voirs des liens vers les differentes pages du site :
Accueil | Gestion établissements | Gestion groupes | Attributions chambres |
Informations concernant les groupes
Bon quand tous ces liens marchent sauf un lien qui est "Attributions chambres"
Quand je clique dessus ça me renvois cette erreur :
Bref donc je regarde dans la table gestionBase.inc à la ligne 211
Bon comme vous pouvez le constater l'erreur ce situe au niveau de la table.Elle n'existe pas donc la requette va renvoyer rien du tout donc erreur.
Le site est hebergé en local grace au logiciel EasyPHP qui regroupe Apache,PHPMyAdmin,MySQL...
Bon donc euh depuis l'interface de EasyPHP je ne me rapel plus trop comment creer cette table afin de corriger cette erreur.
Merci de votre aide
Au revoir et à bientot.
Voila j'ai creer (disons que j'ai vaguement modifier un petit site internet) un petit site internet...
Donc quand on est sur la page d'accueil du site on peux voirs des liens vers les differentes pages du site :
Accueil | Gestion établissements | Gestion groupes | Attributions chambres |
Informations concernant les groupes
Bon quand tous ces liens marchent sauf un lien qui est "Attributions chambres"
Quand je clique dessus ça me renvois cette erreur :
Code : Tout sélectionner
Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in c:\program files\easyphp1-8\www\_gestionBase.inc.php on line 211 Bref donc je regarde dans la table gestionBase.inc à la ligne 211
<?
// FONCTIONS DE CONNEXION
function connect()
{
$hote="localhost";
$login="root";
$mdp="";
return mysql_connect($hote, $login, $mdp);
}
function selectBase($connexion)
{
$bd="festival";
$query="SET CHARACTER SET utf8";
// Modification du jeu de caractères de la connexion
$res=mysql_query($query, $connexion);
$ok=mysql_select_db($bd, $connexion);
return $ok;
}
// FONCTION DE GESTION DES GROUPES
function obtenirReqIdNomGroupesAHeberger()
{
$req="select id, nom from Groupe where hebergement='O' order by id";
return $req;
}
function obtenirNomGroupe($connexion, $id)
{
$req="select nom from Groupe where id='$id'";
$rsGroupe=mysql_query($req, $connexion);
$lgGroupe=mysql_fetch_array($rsGroupe);
return $lgGroupe["nom"];
}
function obtenirReqGroupes()
{
$req="select id, nom, nomPays from Groupe order by nomPays";
return $req;
}
function obtenirDetailGroupe($connexion, $id)
{
$req="select * from Groupe where id='$id' ";
$rsGroupe=mysql_query($req, $connexion);
return mysql_fetch_array($rsGroupe);
}
function modifierGroupe($connexion, $id, $nom, $identiteResponsable, $adressePostale,
$nomPays, $nombrePersonnes, $hebergement)
{
$nom=str_replace("'", "''", $nom);
$identiteResponsable=str_replace("'","''", $identiteResponsable);
$adressePostale=str_replace("'","''", $adressePostale);
$nomPays=str_replace("'","''", $nomPays);
$req="update Groupe set nom='$nom',identiteResponsable='$identiteResponsable',
adressePostale='$adressePostale',nomPays='$nomPays',
nombrePersonnes='$nombrePersonnes',hebergement='$hebergement'
where id='$id'";
mysql_query($req, $connexion);
}
function obtenirId($connexion)
{
$req="select max(id) as maximum from Groupe ";
$rsGroupe=mysql_query($req, $connexion);
$lgGroupe= mysql_fetch_array($rsGroupe);
$idMax =$lgGroupe["maximum"];
$nb =substr($idMax,1,strlen($idMax)-1);
$nb++;
echo "g".$nb;
return "g".$nb;
}
function creerGroupe($connexion, $nom, $identiteResponsable, $adressePostale,
$nomPays, $nombrePersonnes, $hebergement)
{
$id = obtenirId($connexion);
$nom=str_replace("'", "''", $nom);
$identiteResponsable=str_replace("'","''", $identiteResponsable);
$adressePostale=str_replace("'","''", $adressePostale);
$nomPays=str_replace("'","''", $nomPays);
$req="insert into Groupe values ( '$id','$nom','$identiteResponsable',
'$adressePostale',$nombrePersonnes,'$nomPays',$hebergement)";
echo $req;
mysql_query($req, $connexion);
}
function supprimerGroupe($connexion, $id)
{
$req="delete from Groupe where id='$id'";
mysql_query($req, $connexion);
}
// FONCTIONS DE GESTION DES ÉTABLISSEMENTS
function obtenirReqEtablissements()
{
$req="select id, nom from Etablissement order by id";
return $req;
}
function obtenirReqEtablissementsOffrantChambres()
{
$req="select id, nom, nombreChambresOffertes from Etablissement where
nombreChambresOffertes!=0 order by id";
return $req;
}
function obtenirReqEtablissementsAyantChambresAttribuées()
{
$req="select distinct id, nom, nombreChambresOffertes from Etablissement,
Attribution where id = idEtab order by id";
return $req;
}
function obtenirDetailEtablissement($connexion, $id)
{
$req="select * from Etablissement where id='$id'";
$rsEtab=mysql_query($req, $connexion);
return mysql_fetch_array($rsEtab);
}
function supprimerEtablissement($connexion, $id)
{
$req="delete from Etablissement where id='$id'";
mysql_query($req, $connexion);
}
function modifierEtablissement($connexion, $id, $nom, $adresseRue, $codePostal,
$ville, $tel, $adresseElectronique, $type,
$civiliteResponsable, $nomResponsable,
$prenomResponsable, $nombreChambresOffertes)
{
$nom=str_replace("'", "''", $nom);
$adresseRue=str_replace("'","''", $adresseRue);
$ville=str_replace("'","''", $ville);
$adresseElectronique=str_replace("'","''", $adresseElectronique);
$nomResponsable=str_replace("'","''", $nomResponsable);
$prenomResponsable=str_replace("'","''", $prenomResponsable);
$req="update Etablissement set nom='$nom',adresseRue='$adresseRue',
codePostal='$codePostal',ville='$ville',tel='$tel',
adresseElectronique='$adresseElectronique',type='$type',
civiliteResponsable='$civiliteResponsable',nomResponsable=
'$nomResponsable',prenomResponsable='$prenomResponsable',
nombreChambresOffertes='$nombreChambresOffertes' where id='$id'";
mysql_query($req, $connexion);
}
function creerEtablissement($connexion, $id, $nom, $adresseRue, $codePostal,
$ville, $tel, $adresseElectronique, $type,
$civiliteResponsable, $nomResponsable,
$prenomResponsable, $nombreChambresOffertes)
{
$nom=str_replace("'", "''", $nom);
$adresseRue=str_replace("'","''", $adresseRue);
$ville=str_replace("'","''", $ville);
$adresseElectronique=str_replace("'","''", $adresseElectronique);
$nomResponsable=str_replace("'","''", $nomResponsable);
$prenomResponsable=str_replace("'","''", $prenomResponsable);
$req="insert into Etablissement values ('$id', '$nom', '$adresseRue',
'$codePostal', '$ville', '$tel', '$adresseElectronique', '$type',
'$civiliteResponsable', '$nomResponsable', '$prenomResponsable',
'$nombreChambresOffertes')";
mysql_query($req, $connexion);
}
function estUnIdEtablissement($connexion, $id)
{
$req="select * from Etablissement where id='$id'";
$rsEtab=mysql_query($req, $connexion);
return mysql_fetch_array($rsEtab);
}
function estUnNomEtablissement($connexion, $mode, $id, $nom)
{
$nom=str_replace("'", "''", $nom);
// S'il s'agit d'une création, on vérifie juste la non existence du nom sinon
// on vérifie la non existence d'un autre établissement (id!='$id') portant
// le même nom
if ($mode=='C')
{
$req="select * from Etablissement where nom='$nom'";
}
else
{
$req="select * from Etablissement where nom='$nom' and id!='$id'";
}
$rsEtab=mysql_query($req, $connexion);
return mysql_fetch_array($rsEtab);
}
function obtenirNbEtab($connexion)
{
$req="select count(*) as nombreEtab from Etablissement";
$rsEtab=mysql_query($req, $connexion);
$lgEtab=mysql_fetch_array($rsEtab);
return $lgEtab["nombreEtab"];
}
function obtenirNbEtabOffrantChambres($connexion)
{
$req="select count(*) as nombreEtabOffrantChambres from Etablissement where
nombreChambresOffertes!=0"; // Problème cette table n'existe pas, origine du problème
$rsEtabOffrantChambres=mysql_query($req, $connexion);
$lgEtabOffrantChambres=mysql_fetch_array($rsEtabOffrantChambres); // Erreur ligne 211 ------
return $lgEtabOffrantChambres["nombreEtabOffrantChambres"];
}
// Retourne false si le nombre de chambres transmis est inférieur au nombre de
// chambres occupées pour l'établissement transmis
// Retourne true dans le cas contraire
function estModifOffreCorrecte($connexion, $idEtab, $nombreChambres)
{
$nbOccup=obtenirNbOccup($connexion, $idEtab);
return ($nombreChambres>=$nbOccup);
}
// FONCTIONS RELATIVES AUX ATTRIBUTIONS
// Teste la présence d'attributions pour l'établissement transmis
function existeAttributionsEtab($connexion, $id)
{
$req="select * From Attribution where idEtab='$id'";
$rsAttrib=mysql_query($req, $connexion);
return mysql_fetch_array($rsAttrib);
}
// Retourne le nombre de chambres occupées pour l'id étab transmis
function obtenirNbOccup($connexion, $idEtab)
{
$req="select IFNULL(sum(nombreChambres), 0) as totalChambresOccup from
Attribution where idEtab='$idEtab'";
$rsOccup=mysql_query($req, $connexion);
$lgOccup=mysql_fetch_array($rsOccup);
return $lgOccup["totalChambresOccup"];
}
// Met à jour (suppression, modification ou ajout) l'attribution correspondant à
// l'id étab et à l'id groupe transmis
function modifierAttribChamb($connexion, $idEtab, $idGroupe, $nbChambres)
{
$req="select count(*) as nombreAttribGroupe from Attribution where idEtab=
'$idEtab' and idGroupe='$idGroupe'";
$rsAttrib=mysql_query($req, $connexion);
$lgAttrib=mysql_fetch_array($rsAttrib);
if ($nbChambres==0)
$req="delete from Attribution where idEtab='$idEtab' and idGroupe='$idGroupe'";
else
{
if ($lgAttrib["nombreAttribGroupe"]!=0)
$req="update Attribution set nombreChambres=$nbChambres where idEtab=
'$idEtab' and idGroupe='$idGroupe'";
else
$req="insert into Attribution values('$idEtab','$idGroupe', $nbChambres)";
}
mysql_query($req, $connexion);
}
// Retourne la requête permettant d'obtenir les id et noms des groupes affectés
// dans l'établissement transmis
function obtenirReqGroupesEtab($id)
{
$req="select distinct id, nom from Groupe, Attribution where
Attribution.idGroupe=Groupe.id and idEtab='$id'";
return $req;
}
// Retourne le nombre de chambres occupées par le groupe transmis pour l'id étab
// et l'id groupe transmis
function obtenirNbOccupGroupe($connexion, $idEtab, $idGroupe)
{
$req="select nombreChambres From Attribution where idEtab='$idEtab'
and idGroupe='$idGroupe'";
$rsAttribGroupe=mysql_query($req, $connexion);
if ($lgAttribGroupe=mysql_fetch_array($rsAttribGroupe))
return $lgAttribGroupe["nombreChambres"];
else
return 0;
}
?>
Bon comme vous pouvez le constater l'erreur ce situe au niveau de la table.Elle n'existe pas donc la requette va renvoyer rien du tout donc erreur.
Le site est hebergé en local grace au logiciel EasyPHP qui regroupe Apache,PHPMyAdmin,MySQL...
Bon donc euh depuis l'interface de EasyPHP je ne me rapel plus trop comment creer cette table afin de corriger cette erreur.
Merci de votre aide
Au revoir et à bientot.