JeuWeb - Crée ton jeu par navigateur
Problèmatique charge SQL - Version imprimable

+- JeuWeb - Crée ton jeu par navigateur (https://jeuweb.org)
+-- Forum : Discussions, Aide, Ressources... (https://jeuweb.org/forumdisplay.php?fid=38)
+--- Forum : Programmation, infrastructure (https://jeuweb.org/forumdisplay.php?fid=51)
+--- Sujet : Problèmatique charge SQL (/showthread.php?tid=6497)

Pages : 1 2 3


RE: Problèmatique charge SQL - Racktor - 14-11-2012

Une autre question Sephi Chan :
Concernant var_export($persons, true) :
la variable $persons n'est pas utilisé dans le code alors qu'est ce qu'elle doit retourner ? que doit-on mettre à ce moment là ?


RE: Problèmatique charge SQL - Sephi-Chan - 14-11-2012

Ton but est d'exporter le code qui sert à créer cette variable.
Je crois que tu as toutes les armes pour faire des tests par toi-même. Smile


RE: Problèmatique charge SQL - Racktor - 14-11-2012

Voila le code légèrement modifié de Sephi-Chan :
<?php
$buildings = array();
$resource = mysql_query("SELECT `nom_variable`,`capacite`,`mo_occupe`,`cout_fonctionnement`,`temps_construction`,`planche_de_bois`,`bloc_de_pierre`,`poutre_en_fer` FROM `info_batiment`ORDER BY `type` ASC");

while ($result = mysql_fetch_assoc($resource))
{
$name = $result['nom_variable'];
$buildings[$name] = array();
foreach ($result as $key => $value)
{
$buildings[$name][$key] = $value;
}
}
$code = '<?php'."\n".'$BUILDINGS = ' . var_export($buildings, true) . ';'."\n".'?>';
file_put_contents('../espace_membres/constantes.php', $code);
?>
Voici ce que j'obtiens (je ne donne qu'une partie des résultats pour protéger les mécanisme de mon jeu) :

<?php
$BUILDINGS = array (
'grenier' =>
array (
'nom_variable' => 'grenier',
'capacite' => '70',
'mo_occupe' => '15',
'cout_fonctionnement' => '50',
'temps_construction' => '3',
'planche_de_bois' => '1',
'bloc_de_pierre' => '1',
'poutre_en_fer' => '2',
),
'entrepot' =>
array (
'nom_variable' => 'entrepot',
'capacite' => '100',
'mo_occupe' => '10',
'cout_fonctionnement' => '50',
'temps_construction' => '2',
'planche_de_bois' => '5',
'bloc_de_pierre' => '5',
'poutre_en_fer' => '5',
),
);
?>
Inutile de dire que cette technique va me permettre d'éviter de recherche 30 requêtes a chaque changement de page d'un membre alors on peut dire qu'il y a économie niveau charge SQL.

Merci à tous !

Maintenant je vais voir pour le problème de jointure ou non. Il y a 7 tables dans ma bdd qui contiennent des info. Je vais m'occuper de cela.

Maintenant il y a le cas des informations uniques du membres et la modification des calculs en fonction des changements produits par cette nouvelle architecture.