Grouper plusieurs requetes sql

CyberTwister
Invité n'ayant pas de compte PHPfrance

23 juil. 2006, 22:44

Bonjour à tous :D

Alors voici une petite partie de mon script :
// CONNEXION MYSQL
$db_link = @mysql_connect($sql_serveur,$sql_user,$sql_passwd);

$requete=mysql_db_query($sql_bdd,"select * from membre where id=\"$id\"",$db_link) or die(mysql_error());

// SI L'ID N'EXISTE PAS
if(mysql_num_rows($requete)==0)
	{
	// REDIRECTION PAGE ERREUR
	header("Location:$url_erreur");
	exit;
	}

// recuperation données
$pseudo_membre=mysql_result($requete,0,"pseudo");
$email=mysql_result($requete,0,"email");
$argent=mysql_result($requete,0,"argent");
$Niveau=mysql_result($requete,0,"Niveau_sql");
$Signe_astrologique=mysql_result($requete,0,"Signe_Astro");
$Etude=mysql_result($requete,0,"Emploi_sql");
$villageois=mysql_result($requete,0,"villageois");
$perso_tete=mysql_result($requete,0,"profil_tete");
$perso_corp=mysql_result($requete,0,"profil_corp");
$perso_faim=mysql_result($requete,0,"faim");
$perso_poids=mysql_result($requete,0,"Poids");
$perso_soif = mysql_result($requete,0,"soif");
$perso_propreter = mysql_result($requete,0,"proprete");
$perso_wc = mysql_result($requete,0,"besoin_wc");
$fatigue = mysql_result($requete,0,"fatigue_sql");
$muscle = mysql_result($requete,0,"muscle_sql");
$culture = mysql_result($requete,0,"culture_sql");
$popularite = mysql_result($requete,0,"popularite_sql");
$sante = mysql_result($requete,0,"sante_sql");
$perso_general_coiffure=mysql_result($requete,0,"profil_cheveux");
$gentillesse=mysql_result($requete,0,"gentillesse_sql");
$dattedecreation=mysql_result($requete,0,"datte_creation");
$derniere_fois_nourris=mysql_result($requete,0,"last_food");
$derniere_fois_eau=mysql_result($requete,0,"last_eau");
J'effectue donc plein de requetes à la suite...
Mais ne serait-il pas possible de tout avoir en 1 seule requete car mon fournisseur me limite en nombre de requetes...

Grand merci pour votre aide :D

Modérateur PHPfrance
Modérateur PHPfrance | 7636 Messages

23 juil. 2006, 23:01

salut,

Il n'y a qu'une requête qui est exécutée ici...
mysql_result() n'exécute pas de requête mais traite le résultat de celle-ci.

Tu peux éventuellement jeter un oeil aux autres fonctions de traitement mysql_fetch_assoc() et autre mysql_fetch_*

/!\ Avant de poster se documenter et rechercher.
Qui ne sait pas rendre un service n'a pas le droit d'en demander.
MaBrute

CyberTwister
Invité n'ayant pas de compte PHPfrance

23 juil. 2006, 23:26

Ah ok...
Ben merci bien :D

Petit nouveau ! | 3 Messages

26 juil. 2006, 19:17

Oui tu peux largement te simplifier la vie avec mysql_fetch_assoc ou mysql_fetch_array :
// CONNEXION MYSQL 
$db_link = @mysql_connect($sql_serveur,$sql_user,$sql_passwd); 

$requete=mysql_db_query($sql_bdd,"select * from membre where id=\"$id\"",$db_link) or die(mysql_error()); 

// SI L'ID N'EXISTE PAS 
if(mysql_num_rows($requete)==0) 
    { 
    // REDIRECTION PAGE ERREUR 
    header("Location:$url_erreur"); 
    exit; 
    } 

// recuperation données 
$donnees = array();
if($resultats = mysql_fetch_assoc($requete)){
    $donnees = $resultats;
}
Dans ce cas donnees est un tableau associatif, où les clés sont les noms des champs de ta table, et les valeurs sont celles de la table.