Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [php/mysql] Wyświetlanie tekstu z DB, problem...jak zwykle...
.radex
post
Post #1





Grupa: Zarejestrowani
Postów: 1 657
Pomógł: 125
Dołączył: 29.04.2006

Ostrzeżenie: (0%)
-----


Jestem nowy jeśli chodzi o mysql w php, no i mam problem sad.gif

Fragment bazy danych:

kasa
|-user
|-zielone

No i mam taki formularz, żeby wpisać nazwę usera. No i tak klikam ok, nazwa usra przenosi się(a przynajmniej powinna) do $_POST['user']
No i chcę aby według nazwy usera wyświetliła się liczba jego $$$. Ale zabardzo nie wiem jak to zrobić. Włączam formularz, ok. Przechodze do panelu, ok. Ale nic nie pisze( nie ma parse error, ale nic nie ma ) mad.gif . Z góry dzięki za pomoc.
Pozdrawiam, Radex.

Ten post edytował radex_p 29.04.2006, 09:19:48


--------------------
blog | Tadam — minutnik do Pomodoro na Maka :)
Go to the top of the page
+Quote Post
nospor
post
Post #2





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




1) rzuc kodem
2) popraw tytul, bo slowo "Problem" dziala tu jak plachta na byka. Tytul ma byc odzwierciedleniem problemu, a nie slowa "Problem"


--------------------

"Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista
"Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer

Go to the top of the page
+Quote Post
.radex
post
Post #3





Grupa: Zarejestrowani
Postów: 1 657
Pomógł: 125
Dołączył: 29.04.2006

Ostrzeżenie: (0%)
-----


jestem prawie pewien że tekst jest zrypany sad.gif
  1. <?
  2. mysql_connect("localhost", "root", "");
  3. echo $zielone ;
  4. $nick = $_POST['nick'];
  5. $zielonesql = "SELECT kasa FROM zielone WHERE user='$nick'";
  6. $zielone = mysql_query($zielonesql);
  7.  
  8. ?>


--------------------
blog | Tadam — minutnik do Pomodoro na Maka :)
Go to the top of the page
+Quote Post
nospor
post
Post #4





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




no wiesz, najpierw wypisujesz zmienną $zielone, a dopiero potem pare linii nizej przypisujesz do niej zawartość... ciut nielogiczne winksmiley.jpg nie uwazasz, ze powinno byc na odwrót?
pozatym po wykonaniu mysql_query przy select, nalezy jeszcze wykonac mysql_fetch_array(). zajrzyj do manuala co i jak.

ps: przenosze na przedszkole


--------------------

"Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista
"Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer

Go to the top of the page
+Quote Post
.radex
post
Post #5





Grupa: Zarejestrowani
Postów: 1 657
Pomógł: 125
Dołączył: 29.04.2006

Ostrzeżenie: (0%)
-----


Ale zapytanie do SQL jest poprawne? no a tak po za tym nie do końca wiem gdzie umieścić mysql_fetch_array


--------------------
blog | Tadam — minutnik do Pomodoro na Maka :)
Go to the top of the page
+Quote Post
mike
post
Post #6





Grupa: Przyjaciele php.pl
Postów: 7 494
Pomógł: 302
Dołączył: 31.03.2004

Ostrzeżenie: (0%)
-----


Cytat(radex_p @ 2006-04-29 11:20:09)
(...) no a tak po za tym nie do końca wiem gdzie umieścić mysql_fetch_array

Jak to jak?
Dokładnie tak samo jak jest w przykładach w manualu: mysql_fetch_array()

~nospor przecież Ci napisał:
Cytat
zajrzyj do manuala co i jak.
... więc lepiej do niego zajrzyj.
Go to the top of the page
+Quote Post
gebp
post
Post #7





Grupa: Zarejestrowani
Postów: 180
Pomógł: 6
Dołączył: 10.04.2006

Ostrzeżenie: (0%)
-----


  1. <?php
  2. mysql_connect("localhost", "root", "");
  3.  
  4. $nick = $_POST['nick'];
  5. $query="SELECT zielone FROM kasa WHERE user like '$nick' ";
  6. $zielone=mysql_fetch_array($query);
  7. $ilekasy=$zielone['zielone'];
  8.  
  9. echo ($ilekasy);
  10.  
  11. ?>


Zakłdając że kasa to tabela, user to... user (jego nick) a zielone to ilość kasy.
Go to the top of the page
+Quote Post
.radex
post
Post #8





Grupa: Zarejestrowani
Postów: 1 657
Pomógł: 125
Dołączył: 29.04.2006

Ostrzeżenie: (0%)
-----


wielkie dzięki, właśnie wchodziłem na php manual ale skoro jest przykład tongue.gif smile.gif
EDIT:
mad.gif
Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in G:\Moje Dokumenty\Radex\Web\XAAMP\xampplite\htdocs\z\panel.php on line 7
linia 7 : $zielone = mysql_fetch_array($query);

Ten post edytował radex_p 29.04.2006, 10:44:36


--------------------
blog | Tadam — minutnik do Pomodoro na Maka :)
Go to the top of the page
+Quote Post
mike
post
Post #9





Grupa: Przyjaciele php.pl
Postów: 7 494
Pomógł: 302
Dołączył: 31.03.2004

Ostrzeżenie: (0%)
-----


Przykład, który tak się składa jest zły.
1. Skoro szukamy użytkownika o danym loginie to po co LIKE?
2. Jeśli takiego użytkownika nie ma to mysql_fetch_array() wywali błąd.

Powinno być tak:
  1. <?php
  2.  
  3. $resDBConnection = mysql_connect( 'localhost', 'root', '' );
  4. mysql_select_db( 'igk', $resDBConnection );
  5.  
  6. $_POST[ 'nick' ] = mysql_escape_string( $_POST[ 'nick' ] );
  7.  
  8. $strQuery = "SELECT zielone FROM kasa WHERE user = '" . $_POST[ 'nick' ] . "'";
  9. $resResult = mysql_query( $strQuery, $resDBConnection );
  10.  
  11. if( mysql_num_rows( $resResult ) > 0 )
  12. {
  13. $arrRow = mysql_fetch_array( $resResult ); // zakładamy ze jest jeden taki user
  14. echo $arrRow[ 'zielone' ];  // jesli nie to mysql_fetch_array() powinno być w pętli
  15. }
  16. else
  17. {
  18. echo 'Brak użytkownika.';
  19. }
  20.  
  21. ?>


~radex_p lepiej czytaj manuala, na forum.php.pl lenie z niechęcią do manuala czekający na gotowce nie są mile widzani tongue.gif

---update---
Hehehe, masz nuczkę tongue.gif
Go to the top of the page
+Quote Post
.radex
post
Post #10





Grupa: Zarejestrowani
Postów: 1 657
Pomógł: 125
Dołączył: 29.04.2006

Ostrzeżenie: (0%)
-----


no to mam jeszcze jednen problem , nie bede robil drugiego tematu
  1. <?php
  2. $whatmod = $_GET['modyfikacja'];
  3. $money = $_GET['money'];
  4. if( $whatmod == '1'){
  5. $joindb = mysql_connect( 'localhost', 'root', '' );
  6. mysql_select_db( 'igk', $joindb );
  7. mysql_query("UPDATE kasa SET zielone='$money' WHERE user='p'");
  8. }
  9. $joindb = mysql_connect( 'localhost', 'root', '' );
  10. mysql_select_db( 'igk', $joindb );
  11.  
  12. $_POST[ 'nick' ] = mysql_escape_string( $_POST[ 'nick' ] );
  13.  
  14. $querydb = "SELECT zielone FROM kasa WHERE user = '" . $_POST[ 'nick' ] . "'";
  15. $zielone = mysql_query( $querydb, $joindb );
  16.  
  17. if( mysql_num_rows( $zielone ) > 0 )
  18. {
  19.     $kasa = mysql_fetch_array( $zielone );
  20.     echo $kasa[ 'zielone' ];
  21. }
  22. else
  23. {
  24.     echo 'Brak użytkownika.';
  25. }
  26. ?>
  27. <br><form method="get" action="?modyfikacja=1">
  28. <input type="text" name="money" value="kasa">
  29. <input type=submit value="zmień">
  30. </form>

dorobiłem do kody coś takiego i aktualizajca nie działa, prawdopodobnie to problem z nazwą usera lub z treścią UPDATE
EDIT:
ale tu zaznaczyłem żeby robiło się TYLKO dla usera 'p'

Ten post edytował radex_p 29.04.2006, 17:18:46


--------------------
blog | Tadam — minutnik do Pomodoro na Maka :)
Go to the top of the page
+Quote Post
Nightwalker
post
Post #11





Grupa: Zarejestrowani
Postów: 180
Pomógł: 0
Dołączył: 5.02.2006
Skąd: Bytom

Ostrzeżenie: (10%)
X----


yyyy a po co łączysz się 2 razy do bazy? nawet nie zamknąłeś połączenia, po prostu połącz się do bazy i jak skończysz operacje na bazach zamknij połączenie (mysql_close())


--------------------
Go to the top of the page
+Quote Post
nospor
post
Post #12





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




Cytat
method="get" action="?modyfikacja=1
W przypadku, gdy wysylasz dane metodą get, parametr akcji jest nadpisywany w rezultacie nie ma go w url smile.gif


--------------------

"Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista
"Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer

Go to the top of the page
+Quote Post
.radex
post
Post #13





Grupa: Zarejestrowani
Postów: 1 657
Pomógł: 125
Dołączył: 29.04.2006

Ostrzeżenie: (0%)
-----


zmieniłem na:
  1. <?php
  2.  
  3. $whatmod = $_POST['modyfikacja'];
  4. $money = $_POST['money'];
  5. if($whatmod == '1'){
  6. $joindb = mysql_connect( 'localhost', 'root', '' );
  7. mysql_select_db( 'igk', $joindb );
  8. mysql_query("UPDATE kasa SET zielone='$money' WHERE user='p'");
  9. }
  10. $joindb = mysql_connect( 'localhost', 'root', '' );
  11. mysql_select_db( 'igk', $joindb );
  12.  
  13. $_POST[ 'nick' ] = mysql_escape_string( $_POST[ 'nick' ] );
  14.  
  15. $querydb = "SELECT zielone FROM kasa WHERE user = '" . $_POST[ 'nick' ] . "'";
  16. $zielone = mysql_query( $querydb, $joindb );
  17.  
  18. if( mysql_num_rows( $zielone ) > 0 )
  19. {
  20.     $kasa = mysql_fetch_array( $zielone );
  21.     echo $kasa[ 'zielone' ];
  22. }
  23. else
  24. {
  25.     echo 'Brak użytkownika.';
  26. }
  27. ?>
  28. <br><form method="post" action="#">
  29. <input type="text" name="money" value="kasa">
  30. <input type="hidden" name="modyfikacja" value="1">
  31. <input type=submit value="zmień">
  32. </form>

i pisze : brak użyszkodnika, dopiero po drugim zalogowaniu pisze
EDIT:
można było by to zrobić za pomocą odświerzenia(head) z ?user=p ,ale tu jest to w post a nie get

Ten post edytował radex_p 29.04.2006, 19:34:15


--------------------
blog | Tadam — minutnik do Pomodoro na Maka :)
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 20.08.2025 - 08:42