vue Mon prem's problème - Page 2
Kommunauty
Connexion
Inscription

Mon prem's problème


Alexou Messages : 2506

Enfin, je sais pas d'où ça venais, mais c'est bon, seul problème là, j'ai essayer de créer une ressources, tout modifier et tout, et je me rend compte qu'il y a plein d'erreur, notamment une, que je comprend pas du tout

		// Pour les defenses ou la flotte 'tarif fixe' durée adaptée a u niveau nanite et usine robot
    $time         = (($pricelist[$Element]['metal'] + $pricelist[$Element]['crystal'] + $pricelist[$Element][ 'Tachyon']) / $game_config['game_speed']) * (1 / ($planète[$resource['21']] + 1)) * pow (1 / 2, $planet[$resource['15']]);
        $time         = floor (($time * 60 * 60) * (1 - (($user['rpg_defenseur']) * 0375)));
    } elseif (in_array ($Element, $reslist['fleet'])) {
        $time         = (($pricelist[$Element]['metal'] + $pricelist[$Element]['crystal'] + $pricelist[$Element]['Tachyon']) / $game_config['game_speed']) * (1 / ($planète[$resource['21']] + 1)) * pow (1 / 2, $planet [$resource ['15']]);
        $time         = floor(($time * 60 * 60) * (1 - (($user['rpg_technocrate']) * 0,05)));
    }

J'ai ce message là, Parse error: syntax error, unexpected ',' in /home/data/users/t/test5/includes/functions/GetBuildingTime.php on line 57

Mais je vois pas l'erreur dans le code

Ah oui, et les requêtes Sql, je comprend pas non plus

ALTER TABLE `game_planets` ADD `double` Tachyon (132,8) NOT NULL default '0 .00000000 ',
ALTER TABLE `game_planets` ADD `tachyon_perhour` int (11) NOT NULL default '0,
ALTER TABLE `game_planets` ADD `tachyon_max` bigint (20) default '100000,
ALTER TABLE `game_planets` ADD `tach_accel` int (11) NOT NULL default '0,
ALTER TABLE `game_planets« ADD `tachyon_store` int (11) NOT NULL default '0,
ALTER TABLE `game_planets` ADD `tach_accel_porcent` int (11) NOT NULL default '10;

Quand j'envoie, ça met que c'est faux, mais je vois pas d'où ça vient non plus

Et vlà le message d'erreur

#1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'Tachyon (132,8) NOT NULL default '0 .00000000 ', ALTER TABLE `game_planets` ADD' at line 1

Et tachyon, c'est le nom de la ressource, car j'ai commencé d'un tuto de briatania, mais tout faux (sont pas doué là-bas )

Donc, pour pas devoir tout rechanger, j'ai garder ce nom de merde

vendredi 8 mai 2009

SiMax Messages : 7572

Ca veut dire qu'il y a une virgule en trop dans la ligne du code. Envoie toute la page qui pose un problème que je puisse regarder ça

vendredi 8 mai 2009

Alexou Messages : 2506

Comment tu connais les messages d'erreur?

<?php

/**
 * GetBuildingTime
 *
 * @version 1&#46;0
 * @copyright 2008 By Chlorel for XNova
 */

// Calcul du temps de construction d'un Element (Batiment / Recherche / Defense / Vaisseau )
// $user       -> Le Joueur lui meme
// $planet     -> La planete sur laquelle l'Element doit etre construit
// $Element    -> L'Element que l'on convoite
function GetBuildingTime ($user, $planet, $Element) {
global $pricelist, $resource, $reslist, $game_config;


$level = ($planet&#91;$resource&#91;$Element&#93;&#93;) ? $planet&#91;$resource&#91;$Element&#93;&#93; &#58; $user&#91;$resource&#91;$Element&#93;&#93;;
if       (in_array($Element, $reslist&#91;'build'&#93;)) {
// Pour un batiment &#46;&#46;&#46;
$cost_metal   = floor($pricelist&#91;$Element&#93;&#91;'metal'&#93;   * pow($pricelist&#91;$Element&#93;&#91;'factor'&#93;, $level));
$cost_crystal = floor($pricelist&#91;$Element&#93;&#91;'crystal'&#93; * pow($pricelist&#91;$Element&#93;&#91;'factor'&#93;, $level));
$cost_tachyon = floor($pricelist&#91;$Element&#93;&#91;'Tachyon'&#93; * pow($pricelist&#91;$Element&#93;&#91;'factor'&#93;, $level));
$time         = ((($cost_crystal) + ($cost_metal)) / $game_config&#91;'game_speed'&#93;) * (1 / ($planet&#91;$resource&#91;'14'&#93;&#93; + 1)) * pow(0&#46;5, $planet&#91;$resource&#91;'15'&#93;&#93;);
$time         = floor(($time * 60 * 60) * (1 - (($user&#91;'rpg_constructeur'&#93;) * 0&#46;1)));
} elseif (in_array($Element, $reslist&#91;'tech'&#93;)) {
// Pour une recherche
$cost_metal   = floor($pricelist&#91;$Element&#93;&#91;'metal'&#93;   * pow($pricelist&#91;$Element&#93;&#91;'factor'&#93;, $level));
$cost_crystal = floor($pricelist&#91;$Element&#93;&#91;'crystal'&#93; * pow($pricelist&#91;$Element&#93;&#91;'factor'&#93;, $level));
$cost_tachyon = floor($pricelist&#91;$Element&#93;&#91;'Tachyon'&#93; * pow($pricelist&#91;$Element&#93;&#91;'factor'&#93;, $level));
$intergal_lab = $user&#91;$resource&#91;123&#93;&#93;;
if       ( $intergal_lab < "1" ) {
$lablevel = $planet&#91;$resource&#91;'31'&#93;&#93;;
} elseif ( $intergal_lab >= "1" ) {
$empire = doquery("SELECT * FROM {{table}} WHERE id_owner='"&#46; $user&#91;id&#93; &#46;"';", 'planets');
$NbLabs = 0;
while ($colonie = mysql_fetch_array($empire)) {
$techlevel&#91;$NbLabs&#93; = $colonie&#91;$resource&#91;'31'&#93;&#93;;
$NbLabs++;
}
if ($intergal_lab >= "1") {
$lablevel = 0;
for ($lab = 1; $lab <= $intergal_lab; $lab++) {
asort($techlevel);
$lablevel += $techlevel&#91;$lab - 1&#93;;
}
}
}
$time = (($cost_metal + $cost_crystal  + $cost_tachyon)  / $game_config&#91;'game_speed'&#93;) / (($lablevel + 1) * 2);
$time         = floor(($time * 60 * 60) * (1 - (($user&#91;'rpg_scientifique'&#93;) * 0&#46;1)));
} elseif (in_array($Element, $reslist&#91;'defense'&#93;)) {
// Pour les defenses ou la flotte 'tarif fixe' durée adaptée a u niveau nanite et usine robot
    $time         = (($pricelist&#91;$Element&#93;&#91;'metal'&#93; + $pricelist&#91;$Element&#93;&#91;'crystal'&#93; + $pricelist&#91;$Element&#93;&#91; 'Tachyon'&#93;) / $game_config&#91;'game_speed'&#93;) * (1 / ($planète&#91;$resource&#91;'21'&#93;&#93; + 1)) * pow (1 / 2, $planet&#91;$resource&#91;'15'&#93;&#93;);
        $time         = floor (($time * 60 * 60) * (1 - (($user&#91;'rpg_defenseur'&#93;) * 0375)));
    } elseif (in_array ($Element, $reslist&#91;'fleet'&#93;)) {
        $time         = (($pricelist&#91;$Element&#93;&#91;'metal'&#93; + $pricelist&#91;$Element&#93;&#91;'crystal'&#93; + $pricelist&#91;$Element&#93;&#91;'Tachyon'&#93;) / $game_config&#91;'game_speed'&#93;) * (1 / ($planète&#91;$resource&#91;'21'&#93;&#93; + 1)) * pow (1 / 2, $planet &#91;$resource &#91;'15'&#93;&#93;);
        $time         = floor(($time * 60 * 60) * (1 - (($user&#91;'rpg_technocrate'&#93;) * 0,05)));
    }



return $time;
}

?>

Pour les requêtes sql, tu as une idée?

vendredi 8 mai 2009

SiMax Messages : 7572

Le problème est que tu avais mis 0,05 comme nombre au lieu de 0.05 : il faut toujours mettre des points au lieu des virgules pour les nombres en informatique

Voici le document corrigé :

    <?php

    /**
    * GetBuildingTime
    *
    * @version 1&#46;0
    * @copyright 2008 By Chlorel for XNova
    */

    // Calcul du temps de construction d'un Element (Batiment / Recherche / Defense / Vaisseau )
    // $user       -> Le Joueur lui meme
    // $planet     -> La planete sur laquelle l'Element doit etre construit
    // $Element    -> L'Element que l'on convoite
    function GetBuildingTime ($user, $planet, $Element) {
       global $pricelist, $resource, $reslist, $game_config;


       $level = ($planet&#91;$resource&#91;$Element&#93;&#93;) ? $planet&#91;$resource&#91;$Element&#93;&#93; &#58; $user&#91;$resource&#91;$Element&#93;&#93;;
       if       (in_array($Element, $reslist&#91;'build'&#93;)) {
          // Pour un batiment &#46;&#46;&#46;
          $cost_metal   = floor($pricelist&#91;$Element&#93;&#91;'metal'&#93;   * pow($pricelist&#91;$Element&#93;&#91;'factor'&#93;, $level));
          $cost_crystal = floor($pricelist&#91;$Element&#93;&#91;'crystal'&#93; * pow($pricelist&#91;$Element&#93;&#91;'factor'&#93;, $level));
          $cost_tachyon = floor($pricelist&#91;$Element&#93;&#91;'Tachyon'&#93; * pow($pricelist&#91;$Element&#93;&#91;'factor'&#93;, $level));
          $time         = ((($cost_crystal) + ($cost_metal)) / $game_config&#91;'game_speed'&#93;) * (1 / ($planet&#91;$resource&#91;'14'&#93;&#93; + 1)) * pow(0&#46;5, $planet&#91;$resource&#91;'15'&#93;&#93;);
          $time         = floor(($time * 60 * 60) * (1 - (($user&#91;'rpg_constructeur'&#93;) * 0&#46;1)));
       } elseif (in_array($Element, $reslist&#91;'tech'&#93;)) {
          // Pour une recherche
          $cost_metal   = floor($pricelist&#91;$Element&#93;&#91;'metal'&#93;   * pow($pricelist&#91;$Element&#93;&#91;'factor'&#93;, $level));
          $cost_crystal = floor($pricelist&#91;$Element&#93;&#91;'crystal'&#93; * pow($pricelist&#91;$Element&#93;&#91;'factor'&#93;, $level));
          $cost_tachyon = floor($pricelist&#91;$Element&#93;&#91;'Tachyon'&#93; * pow($pricelist&#91;$Element&#93;&#91;'factor'&#93;, $level));
          $intergal_lab = $user&#91;$resource&#91;123&#93;&#93;;
          if       ( $intergal_lab < "1" ) {
             $lablevel = $planet&#91;$resource&#91;'31'&#93;&#93;;
          } elseif ( $intergal_lab >= "1" ) {
             $empire = doquery("SELECT * FROM {{table}} WHERE id_owner='"&#46; $user&#91;id&#93; &#46;"';", 'planets');
             $NbLabs = 0;
             while ($colonie = mysql_fetch_array($empire)) {
                $techlevel&#91;$NbLabs&#93; = $colonie&#91;$resource&#91;'31'&#93;&#93;;
                $NbLabs++;
             }
             if ($intergal_lab >= "1") {
                $lablevel = 0;
                for ($lab = 1; $lab <= $intergal_lab; $lab++) {
                   asort($techlevel);
                   $lablevel += $techlevel&#91;$lab - 1&#93;;
                }
             }
          }
          $time = (($cost_metal + $cost_crystal  + $cost_tachyon)  / $game_config&#91;'game_speed'&#93;) / (($lablevel + 1) * 2);
          $time         = floor(($time * 60 * 60) * (1 - (($user&#91;'rpg_scientifique'&#93;) * 0&#46;1)));
       } elseif (in_array($Element, $reslist&#91;'defense'&#93;)) {
          // Pour les defenses ou la flotte 'tarif fixe' durée adaptée a u niveau nanite et usine robot
           $time         = (($pricelist&#91;$Element&#93;&#91;'metal'&#93; + $pricelist&#91;$Element&#93;&#91;'crystal'&#93; + $pricelist&#91;$Element&#93;&#91; 'Tachyon'&#93;) / $game_config&#91;'game_speed'&#93;) * (1 / ($planète&#91;$resource&#91;'21'&#93;&#93; + 1)) * pow (1 / 2, $planet&#91;$resource&#91;'15'&#93;&#93;);
            $time         = floor (($time * 60 * 60) * (1 - (($user&#91;'rpg_defenseur'&#93;) * 0375)));
        } elseif (in_array ($Element, $reslist&#91;'fleet'&#93;)) {
            $time         = (($pricelist&#91;$Element&#93;&#91;'metal'&#93; + $pricelist&#91;$Element&#93;&#91;'crystal'&#93; + $pricelist&#91;$Element&#93;&#91;'Tachyon'&#93;) / $game_config&#91;'game_speed'&#93;) * (1 / ($planète&#91;$resource&#91;'21'&#93;&#93; + 1)) * pow (1 / 2, $planet &#91;$resource &#91;'15'&#93;&#93;);
            $time         = floor(($time * 60 * 60) * (1 - (($user&#91;'rpg_technocrate'&#93;) * 0&#46;05)));
        }



       return $time;
    }

    ?>
vendredi 8 mai 2009

Alexou Messages : 2506

Arf, j'avais corriger le problème dans les autres fichiers, mais pas là; merci

Et pour les requêtes tu sais ?

J'ai beau chercher, et modifier, ça marche que dalle

vendredi 8 mai 2009

Balam Messages : 155

tu es sur?

ALTER TABLE `game_planets` ADD `double` Tachyon (132,8) NOT NULL default '0 .00000000 ',

vendredi 8 mai 2009

Alexou Messages : 2506

Bah j'ai ce message

#1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'Tachyon (132,8) NOT NULL default '0 .00000000 ',' at line 1

vendredi 8 mai 2009

Balam Messages : 155

il n'y a pas de type ....

int ou autre... donc ça peux pas marcher ... mais bon je suis pas tres douer en sql

vendredi 8 mai 2009

Alexou Messages : 2506

ALTER TABLE `game_planets` ADD `double` Tachyon int (132,8) NOT NULL default '0 .00000000 ',

C'est mieux là?

vendredi 8 mai 2009

SiMax Messages : 7572

Il y a un problème de guillemets :

ALTER TABLE `game_planets` ADD `double` Tachyon (132,8) NOT NULL default '0 &#46;00000000 ',
ALTER TABLE `game_planets` ADD `tachyon_perhour` int (11) NOT NULL default '0,
ALTER TABLE `game_planets` ADD `tachyon_max` bigint (20) default '100000,
ALTER TABLE `game_planets` ADD `tach_accel` int (11) NOT NULL default '0,
ALTER TABLE `game_planets` ADD `tachyon_store` int (11) NOT NULL default '0,
ALTER TABLE `game_planets` ADD `tach_accel_porcent` int (11) NOT NULL default '10;
vendredi 8 mai 2009

Page suivante »