Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [php][mysql]aktualizacja rekordu za pomocą przycisku
Forum PHP.pl > Forum > PHP
mateekk
  1. <?php
  2. session_cache_limiter('nocache'); 
  3. $fundusze = $tab_user[0]['fundusze'];
  4. $fundusze2 = 5;
  5. $kasa= $fundusze+$fundusze2;
  6. $zapytanie = "UPDATE `users` SET `fundusze` = '$kasa' WHERE `id`='$nr', $link ";
  7. $idzapytania = mysql_query($zapytanie);
  8. ?>


i teraz potrzebuje, aby zmienna $idzapytania została "wykonana" za pomocą przycisku... chciałem to zrobić tak, że po wcisnięciu przycisku OK jego warosć miała TAK.. coś takiego.:

  1. <?php
  2. if ($_GET['tak'] == 'tak')
  3. dodaj_kase($idzapytania);
  4. ...
  5. function dodaj_kase()
  6. {
  7. $sql = mysql_query("select * from users where login='$login'");
  8. echo "$login";
  9.  
  10. }
  11. ?>



mam taki pomysł, ale nie działa.. czy może ktoś naprowadzić mnie ?
skowron-line
ale co niedziala questionmark.gif nie wykonuje sie zapytanie??

daj

po zapytaniu

  1. <?php
  2. ?>
mateekk
po dodaniu pisze, że nie wybrano żadnej bazy... a pomyslalem teraz, zeby zamiast na przycisk, kliknąć w tekst.. ale nie wiem jak to zrobić.. ma ktoś pomysł ?
skowron-line
Cytat(mateekk @ 21.04.2007, 09:17:41 ) *
po dodaniu pisze, że nie wybrano żadnej bazy..


no to stary nie dziw sie ze niedziala
daj na poczatku
  1. <?php
  2. mysql_select_db("nazwa_bazy");
  3. ?>
mateekk
dodałem - i dalej nic...
skowron-line
pokaz caly skrypt
mateekk
plik uzytkownicy.php:

  1. <? 
  2. //rozpoczęcie sesji 
  3. session_cache_limiter('nocache'); 
  4. //kod PHP 
  5. if ($_GET['tak'] == 'tak')
  6. dodaj_kase($idzapytania);
  7. else
  8. {
  9. if (session_is_registered("user")) 
  10. { 
  11. echo "<form method='get' action='uzytkownicy.php'/>
  12. <input type='submit' value='tak' name='tak'/></p/>
  13. </form/>"; 
  14.  
  15. echo "$login";
  16. echo "a";
  17. }
  18.  
  19. else 
  20. { 
  21. echo "<H3 ALIGN=center>Nie masz uprawnień do korzystania z tej strony! Wróc i się zaloguj</h3>"; 
  22. html_url("index.php", "Logowanie"); 
  23. exit; 
  24. } }
  25.  
  26. function dodaj_kase()
  27. {
  28. mysql_select_db("krasnal");
  29.  
  30. session_cache_limiter('nocache'); 
  31. $fundusze = $tab_user[0]['fundusze'];
  32. $fundusze2 = 5;
  33. $kasa= $fundusze+$fundusze2;
  34. $zapytanie = "UPDATE `users` SET `fundusze` = '$kasa' WHERE `id`='$nr', $link ";
  35. $idzapytania = mysql_query($zapytanie);
  36.  
  37.  
  38. echo "$idzapytania";
  39.  
  40. }
  41.  
  42. ?>
  43.  
  44. <link rel="stylesheet"
  45. href="styl1.css" 
  46. type="text/css" />



w kliku miejscach mam echo, zeby zobaczyc, czy działa w tych miejscach..
phpion
A mysql_connect() to ukradli?
mateekk
$link - to służy jako connect ($link = mysql_connect ('localhost','krasnal','krasnal')winksmiley.jpg

teraz juz chyba łączy ( bo nie wywala błędów ), ale nie pobiera informacji z bazy danych, mimo iż sesja jest aktywna...
jjkk
mysql_error() nic nie pokazuje?
mateekk
juz wiem co najprawdopodomniej mam nie tak... poprsotu, gdy przechodzi na inna strone "gubi" sesje... ale jak temu sam nie zapobiegne bo nie wiem jak... ale podejrzewam, ze chodzi o coś z:
  1. <?php
  2. ?>
Sedziwoj
Cytat
Use of $_SESSION (or $HTTP_SESSION_VARS with PHP 4.0.6 or less) is recommended for improved security and code readability. With $_SESSION, there is no need to use the session_register(), session_unregister(), session_is_registered() functions. Session variables are accessible like any other variables.


Po drugie w tym skrypcie co podałeś masz dwa razy session_start(), po trzecie
Cytat
session_is_registered — Sprawdź czy globalna zmienna jest zarejestrowana w sesji

więc nie wiem po co to wywoływać skoro nie sprawdzasz co zwraca, po czwarte nigdzie nie rejestrujesz 'user'.

A tak w ogóle to sobie poczytaj:
Sesje
choć lepiej po angielsku, polski przekład jest dość słaby.
mateekk
sesja user jest rejestrowana przez inny plik ktory działa OK... natomiast nie umiem pobrac w innych plikach rekordów z bazy... a sesja jest, bo jest warunek if sesion_is_registered echo cos tam i wyswiatla to cos tam...
Sedziwoj
To w końcu 'gubi' czy nie gubi sesji?
mateekk
sam nie wiem jak to nazwać.. po prostu nie pobiera mi rekordów z bazy danych i tyle...
Sedziwoj
A sprawdzałeś jakie zapytanie jest wysyłane do bazy?
zrób coś w tym stylu:
  1. <?php
  2. $strSql = 'SELECT * FROM `tabela` WHERE `id`='.$id;
  3. var_dump( $strSql );
  4. $resWynik = mysql_query( $strSql );
  5. ?>

i będziesz wiedział, co tak naprawdę jest wysyłane, jako zapytanie do bazy.
mateekk
wciepałem to co napisałeś i wyświetla mi

string(33) "SELECT * FROM `users` WHERE `id`="

już nie mam siły.. tydzień nad tym siedze....
Sedziwoj
Czy wiesz co to jest analogia?
Masz sprawdzić jakie jest Twoje zapytanie, ja dałem tylko przykład jak...
mateekk
UDAŁO MI SIĘ!!! DZIĘKI WAM BARDZO!!!
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.