Jump to content
×
×
  • Create New...
  • 0

aide site problème vote


Allostarz
 Share

Question

[Message d'introduction]

 

Version des files :2012

Domaine (Base de données, Core, etc.) :site

Votre niveau (débutant, intermédiaire, avancé) :

 

Description du problème :

Bonjour voila j'ai un problème avec mon fichier vote lorsque les joueurs vote ca fait vous avez déjà voter il i a 1H30 et ça ne rajoute pas de DR .

Votez! Et gagner 100 GOLD!



<?php 

if(isset($_GET['vote']) and ! empty($_GET['vote']))
{

$i = 0;


	$sql = mysql_query("SELECT (UNIX_TIMESTAMP(last_vote) - UNIX_TIMESTAMP()) AS last_vote FROM account WHERE ip = '$ip'");
	while($donnees = mysql_fetch_array($sql))
			{

					$last_vote = str_replace('-', '', $donnees['last_vote']);	


					if($last_vote >= 5400)
						{	

							$i = 0;

						}

					else
						{

							$i = 1;

						}

			}

if($i == 1) { ?> 


Vous avez voté il y a moins d'une heure trentes minutes, sur un autre compte ...

		<?php }

else { 

$sql = mysql_query("SELECT (UNIX_TIMESTAMP(last_vote) - UNIX_TIMESTAMP()) AS last_vote, cash, vote FROM account WHERE login = '$pseudo_membre'");
$donnees = mysql_fetch_array($sql);

	$last_vote = str_replace('-', '', $donnees['last_vote']);


	$cash = $donnees['cash'] + 100; /* Nombre de point ajouté au compte */
	$vote = $donnees['vote'] + 1;

	if($last_vote >= 5400)
		{

					$sql="UPDATE account SET last_vote = '$date', cash = '$cash', vote = '$vote', ip = '$ip' WHERE login = '$pseudo_membre'";
					mysql_query($sql) or die (mysql_error()); 

		?> 
Votre vote a été comptabilisé avec succès ! <?php

		}

	else { ?> 
Vous avez voté il y a moins d'une heure trente minutes ! <?php }

} 

}

else { ?>





<?php } ?>





 

Message d'erreur, capture d'écran :

 

En postant ma demande d'aide, j'affirme avoir lu et accepté le règlement des demandes d'aides.

Link to comment
Share on other sites

  • Answers 23
  • Created
  • Last Reply

Top Posters For This Question

Top Posters For This Question

23 answers to this question

Recommended Posts

  • 0
  • Bot

tente de modifié:

 

$cash = $donnees['cash'] + 100; /* Nombre de point ajouté au compte */

$vote = $donnees['vote'] + 1;

 

par:

 

$cash = $donnees['cash'] 100; /* Nombre de point ajouté au compte */

$vote = $donnees['vote'] 1;

 

cela peu provenir d'ici à propos de DR non ajouté

french_banner.gif

Link to comment
Share on other sites

  • 0

$cash = $donnees['cash'] 100; /* Nombre de point ajouté au compte */
$vote = $donnees['vote'] 1;

 

Pas du tout, ce qui bloque, c'est cette condition :

 

if($last_vote >= 5400)

 

En effet, ça lui affiche l'erreur. C'est donc qu'il y a un problème avec la variable $last_vote :)

 

De plus, là, je vois pas trop ce que tu veux faire ? ça veut rien dire ce que tu as écris... Mettre 2 valeurs comme ça, ça ne fera uniquement que planter encore plus le script :P

Link to comment
Share on other sites

  • 0

Nan : je te le fais pour une et tu fais parreil pour les autres :

 

$sql = mysql_query("SELECT (UNIX_TIMESTAMP(last_vote) - UNIX_TIMESTAMP()) AS last_vote FROM account WHERE ip = '$ip'");

 

 

On rajoute un account. devant la table :

 

$sql = mysql_query("SELECT (UNIX_TIMESTAMP(last_vote) - UNIX_TIMESTAMP()) AS last_vote FROM account.account WHERE ip = '$ip'");

Link to comment
Share on other sites

  • 0

Votez! Et gagner 100 GOLD!



<?php 

if(isset($_GET['vote']) and ! empty($_GET['vote']))
{

$i = 0;


	$sql = mysql_query("SELECT (UNIX_TIMESTAMP(last_vote) - UNIX_TIMESTAMP()) AS last_vote FROM account.account WHERE ip = '$ip'");
	while($donnees = mysql_fetch_array($sql))
			{

					$last_vote = str_replace('-', '', $donnees['last_vote']);	


					if($last_vote >= 5400)
						{	

							$i = 0;

						}

					else
						{

							$i = 1;

						}

			}

if($i == 1) { ?> 


Vous avez voté il y a moins d'une heure trentes minutes, sur un autre compte ...

		<?php }

else { 

$sql = mysql_query("SELECT (UNIX_TIMESTAMP(last_vote) - UNIX_TIMESTAMP()) AS last_vote, cash, vote FROM account.account WHERE login = '$pseudo_membre'");
$donnees = mysql_fetch_array($sql);

	$last_vote = str_replace('-', '', $donnees['last_vote']);


	$cash = $donnees['cash'] + 100; /* Nombre de point ajouté au compte */
	$vote = $donnees['vote'] + 1;

	if($last_vote >= 5400)
		{

					$sql="UPDATE account.account SET last_vote = '$date', cash = '$cash', vote = '$vote', ip = '$ip' WHERE login = '$pseudo_membre'";
					mysql_query($sql) or die (mysql_error()); 

		?> 
Votre vote a été comptabilisé avec succès ! <?php

		}

	else { ?> 
Vous avez voté il y a moins d'une heure trente minutes ! <?php }

} 

}

else { ?>





<?php } ?>





Voila j'ai changer mes toujours pareille .

Link to comment
Share on other sites

  • 0

Essaie de rajouter sur la première requête :

 

$sql = mysql_query("SELECT (UNIX_TIMESTAMP(last_vote) - UNIX_TIMESTAMP()) AS last_vote FROM account.account WHERE ip = '$ip'");

 

ceci :

 

$sql = mysql_query("SELECT (UNIX_TIMESTAMP(last_vote) - UNIX_TIMESTAMP()) AS last_vote FROM account.account WHERE ip = '$ip'") or die(mysql_error());

 

 

Il est possible que l'erreur vienne de cette requête mais qu'elle ne te soit pas affichée.

Link to comment
Share on other sites

  • 0

Passe le champs last_vote en DATETIME,

 

Sais-tu si la variable $date est définie dans le contrôleur (index.php) ? Car là je la vois pas dans le code. Théoriquement, elle doit être une date au format DATETIME.

Link to comment
Share on other sites

  • 0

$sql = mysql_query("SELECT (UNIX_TIMESTAMP(last_vote) - UNIX_TIMESTAMP()) AS last_vote, cash, vote FROM account.account WHERE login = '$pseudo_membre'");
   $donnees = mysql_fetch_array($sql);

       $last_vote = str_replace('-', '', $donnees['last_vote']);


       $cash = $donnees['cash'] + 100; /* Nombre de point ajouté au compte */
       $vote = $donnees['vote'] + 1;

       if($last_vote >= 5400)

 

Modifie ceci comme ça, cela va t'afficher la valeur de $last_vote :

 

$sql = mysql_query("SELECT (UNIX_TIMESTAMP(last_vote) - UNIX_TIMESTAMP()) AS last_vote, cash, vote FROM account.account WHERE login = '$pseudo_membre'");
   $donnees = mysql_fetch_array($sql);

       $last_vote = str_replace('-', '', $donnees['last_vote']);


       $cash = $donnees['cash'] + 100; /* Nombre de point ajouté au compte */
       $vote = $donnees['vote'] + 1;
       echo 'last_vote = '.$last_vote.'';   
       if($last_vote >= 5400)

Link to comment
Share on other sites

  • 0

$cash = $donnees['cash'] + 100; /* Nombre de point ajouté au compte */
       $vote = $donnees['vote'] + 1;
       echo 'last_vote = '.$last_vote.'';   

 

 

Rajoute encore :

 

$cash = $donnees['cash'] + 100; /* Nombre de point ajouté au compte */
       $vote = $donnees['vote'] + 1;
       echo 'last_vote = '.$last_vote.''; 
       echo 'cash = '.$donnees['cash'].'';

 

Cela ne va pas marcher, pour l'instant je teste si les variables sont correctes car je pense que le problème vient de la requête SQL.

 

Ta variable $pseudo_membre est-elle correctement définie ?

Link to comment
Share on other sites

  • 0

Transforme

 

$sql = mysql_query("SELECT (UNIX_TIMESTAMP(last_vote) - UNIX_TIMESTAMP()) AS last_vote, cash, vote FROM account.account WHERE login = '$pseudo_membre'");

 

en

 

$sql = mysql_query("SELECT cash, vote FROM account.account WHERE login = '$pseudo_membre'");

 

Si cash s'affiche, c'est que c'est ça qui bug (et j'espère car là je vois plus rien :D)

Link to comment
Share on other sites

  • 0
  • Retraité

Bonjour,

 

Le sujet contient la balise [glow=#800000][Résolu][/glow] ou reste sans réponse, de ce fait il a été déplacé dans la section "Résolu ou sans réponse".

 

Cordialement.

Link to comment
Share on other sites

Guest
This topic is now closed to further replies.
 Share



  • Flux d'Activité

    1. 30

      AresiaCMS

    2. 30

      AresiaCMS

    3. 30

      AresiaCMS

    4. 66

      Decay 2.51

    5. 0

      PACK Dofus Arcenciel

    6. 0

      Partage Ornament L'attaque des Titans

  • Recently Browsing

    • No registered users viewing this page.

Important Information

Terms of Use / Privacy Policy / Guidelines / We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.