CONNEXION
  • RetourJeux
    • Sorties
    • Hit Parade
    • Les + populaires
    • Les + attendus
    • Soluces
    • Tous les Jeux
    • Gaming
  • RetourActu Gaming
    • News
    • Astuces
    • Tests
    • Previews
    • Toute l'actu gaming
  • RetourBons plans
    • Bons plans
    • Bons plans Smartphone
    • Bons plans Hardware
    • Bons plans Image et Son
    • Bons plans Amazon
    • Bons plans Cdiscount
    • Bons plans Decathlon
    • Bons plans Fnac
    • Tous les Bons plans
  • RetourJVTech
    • Actus High-Tech
    • Intelligence Artificielle
    • Smartphones
    • Mobilité urbaine
    • Hardware
    • Image et son
    • Tutoriels
    • Tests produits High-Tech
    • Guides d'achat High-Tech
    • JVTech
  • RetourCulture
    • Actus Culture
    • Culture
  • RetourVidéos
    • A la une
    • Gaming Live
    • Vidéos Tests
    • Vidéos Previews
    • Gameplay
    • Trailers
    • Chroniques
    • Replay Web TV
    • Toutes les vidéos
  • RetourForums
    • Hardware PC
    • PS5
    • Switch 2
    • Xbox Series
    • Switch
    • Pokemon pocket
    • FC 25 Ultimate Team
    • League of Legends
    • Tous les Forums
  • PC
  • PS5
  • Xbox Series
  • Switch 2
  • PS4
  • One
  • Switch
  • iOS
  • Android
  • MMO
  • RPG
  • FPS
En ce moment Genshin Impact Valhalla Breath of the wild Animal Crossing GTA 5 Red dead 2
Liste des sujets

Problème avec du PHP

Pseudo supprimé
Pseudo supprimé 03 février 2006 à 17:28:01

salut
jai des scripts php qui effectue plusieurs actions dans ma bdd en meme temps
genre 4 - 5 requete + 4 - 5 insertions de donnée

mais il sufit alors que je clique 2 fois sur le lien qui effectue cette action pour que :

1/ seul la moitié du script s´effectue
2/ ou soit le script s´effectue 2 - 3 fois en plus en fonction du nombre de clique :o))

ce qui créé des bugs énorme, vu que le script sarete en plein milieu !

ce n´est qu´un exemple parmi tant d´autres

comment faire pour éviter des scrits effectué en double ou a moitié lors dun clique sur un lien ?

remplacer le lien par une input peut etre ?
je ne sais pas du tout

merci ++

AppleMac
AppleMac
Niveau 9
03 février 2006 à 17:37:08

Peut-êtreavec des variables de session :question:

Pseudo supprimé
Pseudo supprimé 03 février 2006 à 17:39:12

hein ? aucun rapport
ya bien les sessions qui entre en jeu dans mes scipts mais sa a aucun rapport...

deepblue
deepblue
Niveau 16
03 février 2006 à 17:42:58

amenes ton code stp

AppleMac
AppleMac
Niveau 9
03 février 2006 à 17:46:47

Ce que je veux dire, c´est que dans ton code, tu mets des conditions liés à des variables de sessions pour que le code s´exécute une seule fois.

Pseudo supprimé
Pseudo supprimé 03 février 2006 à 17:48:30

sa changera rien

le gars clique, condition est bonne, script fini a 50%, la page na pas le temps de se re afficher et le gars reclique, et op, mega bug :o))

deepblue
deepblue
Niveau 16
03 février 2006 à 17:50:32

amenes ton code stp (bis)

AppleMac
AppleMac
Niveau 9
03 février 2006 à 17:51:14

Non, on clique, au début du code:
dans la condition la variable qui sert à la condition est FALSE puis à la fin du code on la remet TRUE

Pseudo supprimé
Pseudo supprimé 03 février 2006 à 17:51:37

bah je sais pas trop
a vrai dire c´est du code PHP pour un MMORPG donc...
je peux te montrer sur msn, et te montrer le code en cas de besoin :)

Gab23
Gab23
Niveau 4
03 février 2006 à 17:53:06

En mettant un input à la place du lien ça devrait marcher.

Suffit ensuite de désactiver le bouton après le premier clic:

<input type="button" onclick="javascript:this.disabled=true;" value="Cliquez ici" />

Pseudo supprimé
Pseudo supprimé 03 février 2006 à 17:56:01

Gab23 :d) pas con ton truc, peut etre qu´on associant ca a la méthode de applemac que jai pas compris sa devrai marcher :)

AppleMac
AppleMac
Niveau 9
03 février 2006 à 18:02:12

Oui, alors rien ne vaut un bon petit code…

<?php
if (!$_SESSION[´anti_db´]) {
$_SESSION[´anti_db´]=true;
//CODE
$_SESSION[´anti_db´]=false;
}
?>

À mélanger avec la méthode javascript, mais à la place de onclik, je conseille de mettre onsubmit.

Pseudo supprimé
Pseudo supprimé 03 février 2006 à 18:04:28

applemac :d) explique moi en koi sa pourai regler mon probleme lol O_o parce que je vois pas trop
le script peut toujours sefectuer a moitié si il reclique

AppleMac
AppleMac
Niveau 9
03 février 2006 à 18:08:29

Le $_SESSION[´anti_db´]=false; étant à la fin et non-pas à la moitié du script,
la conditions sera fausse et donc le code ne sera pas exécuté deux fois.

Gab23
Gab23
Niveau 4
03 février 2006 à 18:11:21

applemac :d) Je ne suis pas certain. Ta condition fait ce qui suit:

Si la variable session anti_db n´existe pas, alors...

Mais a la fin du script, la variable est définie à false. Donc elle existe. Selon moi, faudrait plutot faire quelque chose comme:

<?php
session_start();
if (!$_SESSION[´anti_db´]) {
echo "OK";
$_SESSION[´anti_db´] = true;
}
?>

Gab23
Gab23
Niveau 4
03 février 2006 à 18:12:14

et on remplace ´echo "OK"´ par le code de AoEmaster

Pseudo supprimé
Pseudo supprimé 03 février 2006 à 19:48:39

super le onclick="javascript:this.disabled=true;"

sauf qu´avec IE sa marche pas
l´input devient inclicable et sa ne charge aucune page >_<

Yoda_Software
Yoda_Software
Niveau 30
03 février 2006 à 19:53:48

C´est pour ça que applemac t´as conseillé de mettre onsubmit au lieu de onclick. Il faut lire les posts en entier :ok:

Pseudo supprimé
Pseudo supprimé 03 février 2006 à 19:55:26

Yoda_Software :d) jai tout lu dit pas des trucs sans en etre sur merci
sa a pas marcher mais je ressaye...

Pseudo supprimé
Pseudo supprimé 03 février 2006 à 20:10:52

oui, bah avec onclick sa marche tres bien
je clique 15 fois sa marche pas donc c bon

onsubmit je clique 15 fois sa charge la page 15 fois, et sa medit le script 15 fois avec plein de bug

Sous forums
  • Aide à l'achat Mac
  • Macintosh
  • Création de sites web
  • Création de Jeux
  • Linux
  • Programmation
  • Internet
  • Steam Deck
  • Hardware
La vidéo du moment