Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP] Pobieranie wartości wpisanej w pole.
Colder
post 20.12.2010, 17:34:46
Post #1





Grupa: Zarejestrowani
Postów: 16
Pomógł: 0
Dołączył: 19.11.2010

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


Witam,
zrobiłem takie pole:
  1. Powód Odrzucenia: <br /><input type="text" name="qqww" id="qqww" class="pole" value="" />


I teraz chcę pobrać to co użytkownik wpiszę w owe pole, myślałem że zrobię to za pomocą:
  1. $_POST['qqww']


Jednak zmienna jest pusta...

Proszę o pomoc.


--------------------
Nie znam się na Php.
Wszystko robię metoda prób i błędów, CTR + C, CTR + V.
:/
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 9)
daros17
post 20.12.2010, 17:40:50
Post #2





Grupa: Zarejestrowani
Postów: 233
Pomógł: 27
Dołączył: 27.08.2007

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


jeśli formularz wysyłasz postem
  1. $qqww = $_POST['qqww'];
  2. echo $qqww;


Ten post edytował daros17 20.12.2010, 17:42:52
Go to the top of the page
+Quote Post
askone
post 20.12.2010, 17:41:01
Post #3





Grupa: Zarejestrowani
Postów: 654
Pomógł: 121
Dołączył: 27.10.2007
Skąd: Poznań, Łódź

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


A czy formularz ma zadeklarowany atrybut "method" jako "POST"?? Jeśli nie określisz jawnie wartości tego atrybutu to domyślnie przyjmowana jest wartość "GET". Więcej informacji tutaj

Pozdrawiam


--------------------
Kliknij jeśli moja odpowiedź Ci pomogła.
askone.pl
Go to the top of the page
+Quote Post
Colder
post 20.12.2010, 18:16:46
Post #4





Grupa: Zarejestrowani
Postów: 16
Pomógł: 0
Dołączył: 19.11.2010

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


Ajjj.
To może tak:
Mam coś takiego:
  1. <form action="index.php?strona=pp&podanie_zatwierdz=<?php echo $_GET['podanie']; ?>" method="post">

To jest chyba metoda czyż nie ?

I dam Wam cały kod, przy czym zaznaczyłem te miejsca które dotyczą problemu ( // TUTAJJJJJJJ!!! ) tongue.gif

  1. <form action="index.php?strona=pp&podanie_zatwierdz=<?php echo $_GET['podanie']; ?>" method="post">
  2. <div class="div_pole">
  3. <strong>Odpowiedz 1:</strong> <br /><?php echo $array_podanie['odpow1']; ?>
  4. </div>
  5. <div class="div_pole">
  6. </div>
  7. <div class="div_pole">
  8. </div>
  9. <div class="div_pole">
  10. </div>
  11. <div class="div_pole">
  12. <strong>Odpowiedz 2:</strong> <br /><?php echo $array_podanie['odpow2']; ?>
  13. </div>
  14. <div class="div_pole">
  15. </div>
  16. <div class="div_pole">
  17. </div>
  18. <div class="div_pole">
  19. </div>
  20. <div class="div_pole">
  21. <strong>Odpowiedz 3:</strong> <br /><?php echo $array_podanie['odpow3']; ?>
  22. </div>
  23. <div class="div_pole">
  24. </div>
  25. <div class="div_pole">
  26. </div>
  27. <div class="div_pole">
  28. </div>
  29. <div class="div_pole">
  30. Powód Odrzucenia: <br /><input type="text" name="qqww" id="qqww" class="pole" value="" /> // TUTAJJJJJJJ!!!
  31. <script type="text/javascript">
  32. var qqww = new LiveValidation('qqww');
  33. </script>
  34. </div>
  35.  
  36. <div class="div_pole">
  37.  
  38. <a href="index.php?strona=pp&podanie=<?php echo $_GET['podanie']; ?>&akcja=akceptuj" style="width:50px;height:30px;text-align:center;padding:25px 15px 10px 15px;background:#ffcc33;margin:5px;float:left;">Akceptuj</a>
  39. <a href="index.php?strona=pp&podanie=<?php echo $_GET['podanie']; ?>&akcja=odrzuc" style="width:50px;height:30px;text-align:center;padding:25px 15px 10px 15px;background:#ffcc33;margin:5px;float:left;">Odrzuć</a><br /><br />
  40. </div>
  41. </form>
  42. </div>
  43.  
  44. <?php
  45. }
  46. }elseif(isset($_GET['podanie']) and is_numeric($_GET['podanie']) and isset($_GET['akcja'])){
  47. if($_GET['akcja'] == 'akceptuj'){
  48. $query_akcja = "UPDATE ".$prefix."forum_users SET status='2', moderator='".$_SESSION['login']."', user_active='1' WHERE user_id='".$_GET['podanie']."'";
  49. $result_akcja = mysql_query($query_akcja) or die("Wystapil blad");
  50. if($result_akcja){
  51. $informacja = 'Podanie zostało zaakceptowane, a konto użytkownika aktywowane.';
  52. }else{
  53. $informacja = 'Podanie nie zostało zaakceptowane, a konto użytkownika nadal pozostaje nieaktywne.';
  54. }
  55. }elseif($_GET['akcja'] == 'odrzuc'){
  56. $query_akcja2 = "UPDATE ".$prefix."forum_users SET user_active='0', status='1', moderator='".$_SESSION['login']."' WHERE user_id='".$_GET['podanie']."'";
  57. $result_akcja2 = mysql_query($query_akcja2) or die("Wystapil blad");
  58. $blabla = mysql_query("INSERT INTO `".$prefix."odrzucone` (id,powod) VALUES ('".$_GET['podanie']."','".$_GET['qqww']."')"); // TUTAJJJJJJJ!!!


Wiem że taka 'kupa' kodu raczej nie jest lubiana przez programistów wiec jeżeli macie jakieś sugestię co może być dalej tego przyczyną, bardzo proszę o post.


Jak widać zaminiłem POST na GET i nic to nie dało.

Ten post edytował Colder 20.12.2010, 18:18:52


--------------------
Nie znam się na Php.
Wszystko robię metoda prób i błędów, CTR + C, CTR + V.
:/
Go to the top of the page
+Quote Post
daros17
post 20.12.2010, 18:34:45
Post #5





Grupa: Zarejestrowani
Postów: 233
Pomógł: 27
Dołączył: 27.08.2007

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


jak już to tak
  1. <form action="index.php?strona=pp&podanie_zatwierdz=<?php echo $_GET['podanie']; ?>" method="GET">


Ten post edytował daros17 20.12.2010, 18:36:32
Go to the top of the page
+Quote Post
askone
post 20.12.2010, 20:48:51
Post #6





Grupa: Zarejestrowani
Postów: 654
Pomógł: 121
Dołączył: 27.10.2007
Skąd: Poznań, Łódź

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


Jeśli zmieniłeś wartość atrybutu "method" na POST to:
  • rozdziel kod odpowiedzialny na rysowanie formularza od kodu odpowiedzialnego za obróbkę danych z niego otrzymanych
  • jeśli zmieniłeś method to dlaczego nadal w kodzie odwołujesz się do $_GET['qqww']questionmark.gif - zrób $_POST['qqww']


Rozdzielenie kodu najlepiej poprzez taki warunek:
  1. <?php
  2. if(!$_POST)
  3. {
  4. //tutaj kod html formularza - przy czym pamiętaj nie możesz tutaj odwoływać się do wartości jakie będą otrzymywane z formularza
  5. }
  6. else
  7. {
  8. //tutaj kod obsługi danych otrzymanych przez formularz
  9. //aby sprawdzić co otrzymujesz daj var_dump'a
  10. echo var_dump($_POST);
  11. }
  12. ?>


ps. korzystaj z firebuga z zakładki sieć - tam widać jakie dane przesyłane są pomiędzy przeglądarką a Twoim skryptem...


--------------------
Kliknij jeśli moja odpowiedź Ci pomogła.
askone.pl
Go to the top of the page
+Quote Post
Colder
post 20.12.2010, 21:33:20
Post #7





Grupa: Zarejestrowani
Postów: 16
Pomógł: 0
Dołączył: 19.11.2010

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


Kurcze widzisz, cieszę się z odpowiedzi, tyle że ja znalazłem 'ciało' które wykonuje się gdy podanie zostaje odrzucane, potem dodałem pole aby podawać powód odrzucenia, i teraz po prostu chcę pobrać go z tej rubryki do zmiennej. Nie bardzo wiem jak to podzielić według Twojego wzoru i w sumie nie rozumiem w czym to pomoże tongue.gif Trochę się też boje to ruszać, bo nie jestem żadnym php'owcem. Po dodaniu tego raczej nie dotknę tej strony znowu z miesiąc, wiec nie piszcie po co się za to biorę jak nic nie umiem tongue.gif


Mój kod wygląda tak:
  1. <form action="index.php?strona=pp&podanie_zatwierdz=<?php echo $_GET['podanie']; ?>" method="post">
  2. <div class="div_pole">
  3. <strong>Odpowiedz 1:</strong> <br /><?php echo $array_podanie['odpow1']; ?>
  4. </div>
  5. <div class="div_pole">
  6. </div>
  7. <div class="div_pole">
  8. </div>
  9. <div class="div_pole">
  10. </div>
  11. <div class="div_pole">
  12. <strong>Odpowiedz 2:</strong> <br /><?php echo $array_podanie['odpow2']; ?>
  13. </div>
  14. <div class="div_pole">
  15. </div>
  16. <div class="div_pole">
  17. </div>
  18. <div class="div_pole">
  19. </div>
  20. <div class="div_pole">
  21. <strong>Odpowiedz 3:</strong> <br /><?php echo $array_podanie['odpow3']; ?>
  22. </div>
  23. <div class="div_pole">
  24. </div>
  25. <div class="div_pole">
  26. </div>
  27. <div class="div_pole">
  28. </div>
  29. <div class="div_pole">
  30. Powód Odrzucenia: <br /><input type="text" name="qqww" id="qqww" class="pole" value="" />
  31. <script type="text/javascript">
  32. var qqww = new LiveValidation('qqww');
  33. </script>
  34. </div>
  35.  
  36. <div class="div_pole">
  37.  
  38. <a href="index.php?strona=pp&podanie=<?php echo $_GET['podanie']; ?>&akcja=akceptuj" style="width:50px;height:30px;text-align:center;padding:25px 15px 10px 15px;background:#ffcc33;margin:5px;float:left;">Akceptuj</a>
  39. <a href="index.php?strona=pp&podanie=<?php echo $_GET['podanie']; ?>&akcja=odrzuc" style="width:50px;height:30px;text-align:center;padding:25px 15px 10px 15px;background:#ffcc33;margin:5px;float:left;">Odrzuć</a><br /><br />
  40. </div>
  41. </form>
  42. </div>
  43.  
  44. <?php
  45. }
  46. }elseif(isset($_GET['podanie']) and is_numeric($_GET['podanie']) and isset($_GET['akcja'])){
  47. if($_GET['akcja'] == 'akceptuj'){
  48. $query_akcja = "UPDATE ".$prefix."forum_users SET status='2', moderator='".$_SESSION['login']."', user_active='1' WHERE user_id='".$_GET['podanie']."'";
  49. $result_akcja = mysql_query($query_akcja) or die("Wystapil blad");
  50. if($result_akcja){
  51. $informacja = 'Podanie zostało zaakceptowane, a konto użytkownika aktywowane.';
  52. }else{
  53. $informacja = 'Podanie nie zostało zaakceptowane, a konto użytkownika nadal pozostaje nieaktywne.';
  54. }
  55. }elseif($_GET['akcja'] == 'odrzuc'){
  56. $query_akcja2 = "UPDATE ".$prefix."forum_users SET user_active='0', status='1', moderator='".$_SESSION['login']."' WHERE user_id='".$_GET['podanie']."'";
  57. $result_akcja2 = mysql_query($query_akcja2) or die("Wystapil blad");
  58. $blabla = mysql_query("INSERT INTO `".$prefix."odrzucone` (id,powod) VALUES ('".$_GET['podanie']."','".$_POST['qqww']."')");


Linijka z zakresu:

  1. <form action="index.php?strona=pp&podanie_zatwierdz=<?php echo $_GET['podanie']; ?>" method="post">


Linijka z polem w zakresie:

  1. Powód Odrzucenia: <br /><input type="text" name="qqww" id="qqww" class="pole" value="" />


Pobieranie zmiennej:

  1. $blabla = mysql_query("INSERT INTO `".$prefix."odrzucone` (id,powod) VALUES ('".$_GET['podanie']."','".$_POST['qqww']."')");


Nie działa, zmienna $_POST['qqww'] nadal jest pusta.


PS:

Zauważyłem jeszcze że w tym pliku nie ma na początku:

Jeżeli jednak dodam taki kod pojawia się bład, czy to jest przyczyną nie działającego POST ?

Ten post edytował Colder 20.12.2010, 21:35:50


--------------------
Nie znam się na Php.
Wszystko robię metoda prób i błędów, CTR + C, CTR + V.
:/
Go to the top of the page
+Quote Post
askone
post 21.12.2010, 08:36:46
Post #8





Grupa: Zarejestrowani
Postów: 654
Pomógł: 121
Dołączył: 27.10.2007
Skąd: Poznań, Łódź

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


Nie do końca jestem pewien czy poprzez link jesteś w stanie zatwierdzić formularz do wysyłki... Starasz się to zrobić w tym fragmencie:
Cytat
  1. <a href="index.php?strona=pp&podanie=<?php echo $_GET['podanie']; ?>&akcja=akceptuj" style="width:50px;height:30px;text-align:center;padding:25px 15px 10px 15px;background:#ffcc33;margin:5px;float:left;">Akceptuj</a>
  2. <a href="index.php?strona=pp&podanie=<?php echo $_GET['podanie']; ?>&akcja=odrzuc" style="width:50px;height:30px;text-align:center;padding:25px 15px 10px 15px;background:#ffcc33;margin:5px;float:left;">Odrzuć</a><br /><br />


Spróbuj to zrobić poprzez odpowiednie inputy:
  1. <input name="submit" type="submit" value="1" style="width:50px;height:30px;text-align:center;padding:25px 15px 10px 15px;background:#ffcc33;margin:5px;float:left;">Akceptuj</input>
  2. <input name="submit" type="submit" value="0" style="width:50px;height:30px;text-align:center;padding:25px 15px 10px 15px;background:#ffcc33;margin:5px;float:left;">Odrzuć</input>


Po przesłaniu formularza jesteś w stanie rozpoznać, który submit został naciśnięty poprzez odczyt wartości $_POST['submit']: 0 lub 1...

Pisane z palca, ale nie powinno być błędów składniowych

Pozdrawiam


--------------------
Kliknij jeśli moja odpowiedź Ci pomogła.
askone.pl
Go to the top of the page
+Quote Post
Colder
post 21.12.2010, 18:15:32
Post #9





Grupa: Zarejestrowani
Postów: 16
Pomógł: 0
Dołączył: 19.11.2010

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


Nie o to chodzi haha.gif
Ale i tak dzięki. Muszę jednak prosić o więcej, a w zasadzie o info:
  1. <form action="index.php?strona=pp&podanie_zatwierdz=<?php echo $_GET['podanie']; ?>" method="post">


form action =
Co się podaję po znaku = ?
Link do czego ?


Bo ja to widzę, jako link do którego ma przesłać dane, i mam teraz tak:
  1. <form action="index.php?strona=pp&podanie=<?php echo $_GET['podanie']; ?>&akcja=odrzuc" method="post">
  2. <div class="div_pole">
  3. Powód Odrzucenia: <br /><input type="text" name="qqww" id="qqww" class="pole" value="" />
  4. </div>
  5. </form>


W tym samym pliku mam:
  1. if($_GET['akcja'] == 'akceptuj'){

A niżej zrobiłem taki testowy:
  1. $informacja = 'Podanie zostało odrzucone, a konto użytkownika nadal pozostaje nieaktywne. To jest POST:'.$_POST['qqww'].'!';

I zmienna jest pusta, choć jestem na linku wskazanym wyżej :/ ...

Ten post edytował Colder 21.12.2010, 18:29:55


--------------------
Nie znam się na Php.
Wszystko robię metoda prób i błędów, CTR + C, CTR + V.
:/
Go to the top of the page
+Quote Post
askone
post 21.12.2010, 19:15:11
Post #10





Grupa: Zarejestrowani
Postów: 654
Pomógł: 121
Dołączył: 27.10.2007
Skąd: Poznań, Łódź

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


Cytat
Nie znam się na Php.
Wszystko robię metoda prób i błędów, CTR + C, CTR + V.
:/


Po tym mogę Ci polecić tylko ten kurs. Zacznij od tego, postaraj się zrozumieć podstawy, później będziesz choć wiedział co kopiujesz....

Pozdrawiam


--------------------
Kliknij jeśli moja odpowiedź Ci pomogła.
askone.pl
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 Wersja Lo-Fi Aktualny czas: 19.07.2025 - 02:22