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

Bug mineur : Vote comptabilisé


marllow
 Share

Question

[bug vote]Version des files : 2012Domaine (Base de données, Core, etc.) : SiteVotre niveau (débutant, intermédiaire, avancé) : intermédiaireDescription du problème : Bonjour alors voilà j'ai un tout petit soucis mineur ça n'empêche rien au fonctionnement du système de vote comptabilisé mais ça dérange visuellement j'ai ce message qui arrive quand j'accède a ma page de vote :

( ! ) Notice: Undefined index: action in C:\wamp\www\pages\Vote.php on line 33Call Stack#	Time	Memory	Function	Location1	0.0009	36166888	{main}( )	..\index.php:02	0.9996	36520608	include( 'C:\wamp\www\pages\Vote.php' )	..\index.php:190

Voici ma page de vote :

<?php if($key_secu != "Kotus&MonsterSontGeniaux:[email protected]$") { exit(); } ?>                Votez pour nous !                <?php        $credit = '30';        $credit_2 = '30';        if (is_connecter()) {            $login = $_SESSION['pseudo'];            $fetcher = bdd('account')->query("SELECT last_vote,last_vote1 FROM account WHERE login='$login'")->fetch();            $last1 = $fetcher['last_vote'];            $last2 = $fetcher['last_vote1'];            $next_vote = $last1 + 5450;            $next_vote2 = $last2 + 5450;            $time1 = time();            if ($next_vote <= $time1 OR $last1 == "0" OR $last1 == "") {                $topmetin = "TRUE";            } else {                $topmetin = "FALSE";            }            if ($next_vote2 <= $time1 OR $last2 == "0" OR $last2 == "") {                $topsitemt2 = "TRUE";            } else {                $topsitemt2 = "FALSE";            }La ligne apparement buggé =            if ($_GET['p'] == "Vote" && $_GET['action'] != "ok") 			{                $v = bdd('website')->query('SELECT lien_vote, lien_vote2 FROM config LIMIT 1')->fetch();                if ($topmetin == "TRUE") 				{                    ?>                                            


                <?php 				} 				else 				{                                         $debut = $fetcher['last_vote'] + 5450; // Calcule temps où le joueur à voté + 1h30 en s                    $dif = $debut - $time1; //Différence de temps entre l'heure actuel $debut                    $heures = floor($dif / 3600);                    $reste = $dif % 3600;                    $minutes = floor($reste / 60);                    echo 'Vous pourrez de nouveau voter dans ';                 if ($heures == 0) 				 {                        echo $minutes . ' minutes.

';                 } 				 else 				 {                        echo $heures . ' heure et ' . $minutes . ' minutes.

';                 }				}						if ($topsitemt2 == "TRUE") 				{                    ?>                                            


                <?php 				} 				else 				{                                         $debut = $fetcher['last_vote1'] + 5450; // Calcule temps où le joueur à voté + 1h30 en s                    $dif = $debut - $time1; //Différence de temps entre l'heure actuel $debut                    $heures = floor($dif / 3600);                    $reste = $dif % 3600;                    $minutes = floor($reste / 60);                    echo 'Vous pourrez de nouveau voter dans ';                 if ($heures == 0) 				 {                        echo $minutes . ' minutes.

';                 } 				 else 				 {                        echo $heures . ' heure et ' . $minutes . ' minutes.

';                 }				}            } 				else {                if ($_GET['site'] == "topmetin" && $topmetin == "TRUE") {                    $i = 1;                    bdd('account')->exec("update account set last_vote=('" . time() . "'), cash=(cash+" . $credit . "), total_vote=(total_vote+" . $i . ") where login=('" . $_SESSION['pseudo'] . "')");                    echo 'Votre compte sera crédité de '.$credit.' Marques de redemption lorsque vous aurez fini le vote';                    echo'';                } 				elseif ($_GET['site'] == "topsitemt2" && $topsitemt2 == "TRUE") {                    $i = 1;                    bdd('account')->exec("update account set last_vote1=('" . time() . "'), cash=(cash+" . $credit_2 . "), total_vote=(total_vote+" . $i . ") where login=('" . $_SESSION['pseudo'] . "')");                    echo 'Merci d\'avoir voté pour nous. Vous venez d\'être crédité de '.$credit_2.' Marque de redemption.';                    echo'';                } else {                    echo'Vous allez être redirigé.';                    echo'';                }            }        } else {            echo 'Vous devez être connecté.';            echo'';        }        ?>    

Comment reproduire le problème : Petite erreur dans un rectange orangeRecherches et tests effectué : Aucun (petit soucis mineur)Résultat des recherches et tests : AucunMessage 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 3
  • Created
  • Last Reply

Top Posters For This Question

Top Posters For This Question

3 answers to this question

Recommended Posts

  • 0

Bonjour,

 

C'est l’algorithme qui est incorrect.

 

Quand l'user clique sur un des boutons de vote, l'url prend 2 paramètres : action qui est égal à "ok" et site qui est égal au nom du site de vote.

Hors pour choisir quelle action effectuer (soit afficher les boutons, soit récompenses) le script vérifie le paramètre action. S'il est différent de ok on affiche les boutons sinon on crédite le compte. Le problème est que quand l'utilisateur arrive sur la page normalement, ce paramètre n'existe pas d'où l'erreur retournée.

 

Remplace la ligne 33 par ceci :

 

if ($_GET['p'] == "Vote" && empty($_GET['action'])) 

 

A la place de vérifier sa valeur, je vérifie qu'elle n'existe pas ce qui revient au même vu que sa valeur n'a aucune importance.

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 depuis deux semaines ou plus, 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. 1

      Antares2.to | modern Old-/Middleschool | START 07.10.22 | International Server

    2. 0

      Projet Genesis

    3. 4

      Shiva.international serveur privé metin2 Oldschool Start 16.09.2022

    4. 0

      Metin2 Champions - Accès anticipé

    5. 0

      Barbok

    6. 4

      Shiva.international serveur privé metin2 Oldschool Start 16.09.2022

  • 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.