11-18-2006, 09:05 PM
11-18-2006, 09:35 PM
si tu cherche bien sur le réseau du rhien tu trouve
11-20-2006, 06:38 PM
probleme de phpmyadmin chez mon hebergeur, je sais aps quand il sera disponible, je ne pourrais aps tester mon script tant que sa sera pas fini, j'eesaierai de donner un truc quand meme avant jeudi.
11-22-2006, 06:46 PM
Comme convenu je poste mon script
g pas mis de commentaires si vous ne comprennez absolument pas dites le moi,
beaucoup de truc ne sont aps focement utile mais on a aucun bug et aucun nombre décimaux à la sortie.
on eput gerer 3 ressources diférentes
g éditer
Code PHP :
<?
session_start() ;
//Indentifiants de connexion à la base de données.
require("conf.inc.php");
//Connexion à mysql.
mysql_connect($host,$dblogin,$dbpass);
mysql_select_db($dbname);
//recupération des données sur les membres
$sqlmembres = 'SELECT * FROM donneesmembres WHERE id="'.$_SESSION['id'].'"' ;
$reqmembres = mysql_query($sqlmembres) ;
$datamembres = mysql_fetch_array($reqmembres) ;
//récupération des données de la table stockant la derniere mise à jour des ressources
$sqldernierajout = 'SELECT * FROM ajout WHERE id="'.$_SESSION['id'].'"' ;
$reqdernierajout = mysql_query($sqldernierajout) ;
$datadernierajout = mysql_fetch_array($reqdernierajout) ;
//calcul des productions en fonction des batiments
$prodbat1 = 25 * $datamembres['bat1'] * bcpow(1.1 ,$datamembres['bat1']) ;
$prodbat2 = 17 * $datamembres['bat2'] * bcpow(1.1 ,$datamembres['bat2']) ;
$prodbat3 = 8 * $datamembres['bat3'] * bcpow(1.1 ,$datamembres['bat3']) ;
//recupération du temps actuel
$time = time() ;
//calcul des temps écoulés depuis la dernière maj , $tempsprod
$timedernierajout1 = $datadernierajout['time1'] ;
$tempsprod1 = $time - $timedernierajout1 ;
$timedernierajout2 = $datadernierajout['time2'] ;
$tempsprod2 = $time - $timedernierajout2 ;
$timedernierajout3 = $datadernierajout['time3'] ;
$tempsprod3 = $time - $timedernierajout3 ;
//calcul de production pour 1 sec puis production totale depuis alderniere mise a jour
$prod1init = $prodbat1/3600 ;
$prod1 = $prod1init * $tempsprod1;
$prod2init = $prodbat2/3600 ;
$prod2 = $prod2init * $tempsprod2 ;
$prod3init = $prodbat3/3600 ;
$prod3 = $prod3init * $tempsprod3 ;
// $prod1final, n'est aps tout à fait final. on supprime les virgules, mais pour garder le temsp qui correspond à la partie décimale, il faut calculer a combien de sec correspond ce temps. resultat plus de virgule au prod et au temps.
$prod1final = floor($prod1) ;
$tempsconso1 = $prod1final / $prod1init ;
$tempsconso1 = floor($tempsconso1) ;
$timederniereaction1 = $tempsconso1 + $timedernierajout1 ;
$prod1final = $prod1init * $tempsconso1 ;
$prod2final = floor($prod2) ;
$tempsconso2 = $prod2final / $prod2init ;
$tempsconso2 = floor($tempsconso2) ;
$timederniereaction2 = $tempsconso2 + $timedernierajout2 ;
$prod2final = $prod2init * $tempsconso2 ;
$prod3final = floor($prod3) ;
$tempsconso3 = $prod3final / $prod3init ;
$tempsconso3 = floor($tempsconso3) ;
$timederniereaction3 = $tempsconso3 + $timedernierajout3 ;
$prod2final = $prod2init * $tempsconso2 ;
// on calcule l'heure de la mise a jour en deduisant le temps consommé pour obtenir le temsp non consommé et trouver le temps réel de la maj
$timenonconso1 = $time - $timederniereaction1 ;
$timeajout1 = $time - $timenonconso1 ;
$timenonconso2 = $time - $timederniereaction2 ;
$timeajout2 = $time - $timenonconso2 ;
$timenonconso3 = $time - $timederniereaction3 ;
$timeajout3 = $time - $timenonconso3 ;
//calcul des ressources
$res1 = $datamembres['res1'] + $prod1final ;
$res2 = $datamembres['res2'] + $prod2final ;
$res3 = $datamembres['res3'] + $prod3final ;
//requete sql
$sqlajouttime = 'UPDATE ajout SET time1="'.$timeajout1.'" , time2="'.$timeajout2.'" , time3="'.$timeajout3.'" WHERE id="1"';
$sqlajoutressource = 'UPDATE membres SET res1="'.$res1.'" , res2="'.$res2.'" , res3="'.$res3.'" WHERE id="'.$_SESSION['id'] . '"' ;
mysql_query($sqlajouttime) ;
mysql_query($sqlajoutressource) ;
?>g pas mis de commentaires si vous ne comprennez absolument pas dites le moi,
beaucoup de truc ne sont aps focement utile mais on a aucun bug et aucun nombre décimaux à la sortie.
on eput gerer 3 ressources diférentes
g éditer
11-22-2006, 09:00 PM
Et bien merci pr ce petit script je vai me penché dessus ce week je pense pour voir se que sa donne :=)
11-22-2006, 09:02 PM
il marche mais pour une seule personne tu l'inclu ds la page et tu fais une modif pour qu'il marche sur tous et puis c bon.
11-23-2006, 05:50 PM
J'ai essayer de comprendre un peu le script mais enfaite j'ai du mal, si tu pouvais me dire tes tables, et si tu peu aussi rajouter quelque commentaire parce que la
lool merci en tous cas
11-24-2006, 06:59 PM
vous comprenez mieux la ?
02-15-2007, 11:43 AM
Bonjour.
Après avoir installer votre script. J'ai mis que toutes les heure chaque mine produit 5 métal. Quand je me connecte il y a écrit :
Comment faire pour que si l'heure n'est pas passé il ya écrit vosu avez gagner 0 unités de métal?
Après avoir installer votre script. J'ai mis que toutes les heure chaque mine produit 5 métal. Quand je me connecte il y a écrit :
Citation : Vous avez gagné : 0.30277777777778 Unités de métal depuis votre dernière visite
Comment faire pour que si l'heure n'est pas passé il ya écrit vosu avez gagner 0 unités de métal?
02-15-2007, 01:44 PM
Je sais pas je te dis ça comme ça c'est peut être faut
avec $metal le nombre d'unité gagné depuis la dernière connection
mais comme je te l'ai dit, ça me parait simple mais ce n'est peut être pas juste >< ou pas ce que tu demandes .....
avec $metal le nombre d'unité gagné depuis la dernière connection
Code PHP :
<?
if ($metal<0)
{
echo :'vous avez gagnés 0 métal depuis votre connection';
}
else
{
echo 'vous avez gagnés ';
echo $metal;
echo ' depuis votre dernière connection';
}
?>mais comme je te l'ai dit, ça me parait simple mais ce n'est peut être pas juste >< ou pas ce que tu demandes .....