Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [JavaScript][PHP][MySQL]Jednorazowe dodanie liczby do bazy danych Liga Typer'a
Forum PHP.pl > Forum > Przedszkole
BienuSS
Witam.
Tworze taką lige typera. I poszukuje teraz pomysłu jak zrobić żeby jednorazowo dodało mi liczbe do bazy danych tzn. jeśli mecz jest dobrze wytypowany +1 do punktów. Tylko musi to być akcja jednorazowa( czyli nie że za każdym razem jak odświeże strone sprawdza czy status jest win i dodaje do sumy punktów). Może mnie ktoś nakierować w jaki język i mniej więcej jakie komeny iść ?
Neutral
Możesz ustawić np. tzw. flagę na false.

  1.  
  2. if(!isset($flag)){
  3. $flag = true;
  4. }
  5.  
  6.  
  7. if(true){
  8.  
  9.  
  10. if($flag==true){
  11. // $mysqli->query( ...........
  12. $flag = false;
  13. }
  14.  
  15.  
  16. }
  17.  


Kod przepisany na asm x86, nie wiem, czy poprawnie, ale spróbowałem:

Kod
global _main
extern _printf

SECTION .data

msg: db "%d",0
msg2: db "Hello",0
var: dd 0
var2: dd 0

SECTION .text

_main:

mov eax,-1    ; eax=-1
mov ebx,1    ; ebx=1

            ; it is, as if this !isset, I accepted, that if is -1, it not exist
cmp eax,-1    ; to jest tak jakby ten !isset, przyjąłem, że gdy jest na -1, to nie istnieje
je jumping    ; if(eax==-1) jump to jumping else
          
mov eax,0      ; $flag=false

ret            ; exit?

jumping:        
mov eax,1    ; $flag=true

cmp ebx,1      ; if(ebx==1) jump to jumping2
je jumping2    

jumping2:          
cmp eax,1    ; if(eax==1) jump to jumping3
je jumping3

jumping3:

mov eax,0    ; eax=0
;your code here
push eax       ; value from eax put on the stack
push msg2     ; parameter from msg2 put on the stack
call _printf ; call function from library probably C
add esp,8      ; remove (clear) 8 bytes?


ret            ; return?

SECTION .bss

BienuSS
Tylko ,że co ma być tutaj tą funkcją która "jednorazowo" doda ilość punktów bo niestety nie działa to i analizując cały skrypt ja też nigdzie nie widze czegoś takiego

O kurde ohmy.gif ohmy.gif nie wiem czy to ogarne... Teraz to mnie zaskoczyłeś, ale spróbować trzeba biggrin.gif ale mimo wszystko dzięki za starania.
Neutral
  1. <?php
  2.  
  3. if(!isset($_SESSION['a'])){
  4. $_SESSION['a']=0;
  5. }else {
  6. $_SESSION['a']=200;
  7. }
  8.  
  9.  
  10.  
  11.  
  12. if($_SESSION['a']==0){
  13. // $mysqli->query( ...........
  14. $_SESSION['a']++;
  15. echo 'to sie wykona';
  16.  
  17.  
  18. }
  19.  
  20. echo $_SESSION['a'];
  21.  
  22.  
  23. ?>
  24.  
BienuSS
Zaraz ogarne twój pomysł, wcześniej kumpel podsunął mi taki pomysł żeby w mysql dodać kolumne w której bedzie pisało czy odebrano czy nie. Ale biore i spróbuje twój pomysł bo jest to lepszą opcją niz ta kolumna. Ogólnie to działa ale w przypadku gdy jest tylko jedno pole z wygraną jak jest kilka to już nie działa przy kolejnych.
Zrobiłem ostatecznie na podstawie dodatkowej kolumny w tabeli. Do zamknięcia, dzięki wszystkim
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.