Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [HTML][PHP] Edytowanie rekordu z określonym ID
SpiJay
post 30.05.2012, 09:20:49
Post #1





Grupa: Zarejestrowani
Postów: 63
Pomógł: 2
Dołączył: 18.11.2009
Skąd: Grudziądz

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


Siemanko !

Uczę się PHP stąd właśnie temat w takim dziale. Chcę zrobić automat do np ogłoszeń.
Dodawanie ogłoszenia, usuwanie, edytowanie.

Wszystko mi idzie nie źle i sprawnie, aczkolwiek z problemem borykam się w końcowym etapie skryptu.
Chodzi o edytowanie:

Kod PHP
  1. (...)
  2. # Edytowanie ogloszenia
  3. if($_POST['adv_edit'] != '' && $_SESSION['admin'] == 'ok') {
  4.  
  5. $qwerty = "SELECT * FROM ogloszenie WHERE id=".$_POST['2lp'];
  6. $sql = mysql_query($qwerty)or die('Błąd zapytania');
  7. list($adv_id, $adv_name, $adv_text) = mysql_fetch_array($sql);
  8.  
  9. $tpl->set_var('ADV_NAME', $adv_name);
  10. $tpl->set_var('ADV_TXT', $adv_text);
  11. $tpl->set_var('ADV_SUBMIT', 'adv_update');
  12.  
  13. if($_POST['adv_update'] != '' && $_SESSION['admin'] == 'ok'){
  14. if($_POST['adv_name'] != '') {
  15. if($_POST['adv_txt'] != '') {
  16. echo $_POST['2lp'];
  17. mysql_query("UPDATE ogloszenie SET nazwa='".$_POST['adv_name']."', tresc='".$_POST['adv_txt']."' WHERE id='".$_POST['2lp']."'");
  18. $tpl->set_var('ADV_ACTION', $adv_ok);
  19. } else { $tpl->set_var('ADV_ACTION', $adv_bad_name); }
  20. } else {
  21. $tpl->set_var('ADV_ACTION', $adv_bad_txt);
  22. }
  23. }
  24.  
  25. }
  26. (...)


Oraz formularz HTML:

  1. <form method="post">
  2. <input type="text" name="adv_name" style="margin-left: 20px; width: 300px; margin-bottom: 4px;" value="{ADV_NAME}"/>
  3. <textarea name="adv_txt" style="width: 94%; margin-left: 20px; height: 200px; resize: vertical;">{ADV_TXT}</textarea><br/>
  4. <input type="submit" name="{ADV_SUBMIT}" value="Dodaj ogłoszenie +" style="margin-left: 20px; margin-top: 10px; cursor: pointer" onclick="return confirm('Dodać nowe ogłoszenie ?')"/>
  5. </form>
  6. <table style="width: 95%; margin: 0 auto; margin-top: 10px;">
  7. <tr>
  8. <td class="row1" width="30">
  9. Lp.
  10. </td>
  11. <td class="row1">
  12. Nazwa / Treść
  13. </td>
  14. <td class="row1" width="30" align="center">
  15. Usuń
  16. </td>
  17. <td class="row1" width="30" align="center">
  18. Edytuj
  19. </td>
  20. </tr>
  21. <!--Begin_OGL-->
  22. <tr>
  23. <td style="background: #bbb; padding: 3px;">{ID_OGLOSZENIE} :: {LP_OGLOSZENIE}</td>
  24. <td style="background: #ddd; padding: 3px;">&raquo; {NAZWA_OGLOSZENIE} - {TRESC_OGLOSZENIE}</td>
  25. <td style="background: #BA8F8F; padding: 3px;" align="center"><form method="post"><input type="submit" name="adv_del" value="X" title="Usuń" style="color:#9B3333; cursor: pointer;" onclick="return confirm('Czy napewno chcesz usunąć ogłoszenie ?')"/><input type="hidden" name="lp" value="{LP_OGLOSZENIE}"/></form>{LP_OGLOSZENIE}</td>
  26. <td style="background: #9DBA8F; padding: 3px;" align="center"><form method="post"><input type="submit" name="adv_edit" value="E" title="Edytuj" style="color:#339B42; cursor: pointer;"/><input type="hidden" name="2lp" value="{LP_OGLOSZENIE}"/>{LP_OGLOSZENIE}</td>
  27. </tr>
  28. <!--End_OGL-->
  29. </table>


Chcę aby w takim samym formularzu jak DODAWANIE OGLOSZENIA odbywało się jego edytowanie. Więc po kliknięciu `Edit` wczytuję dane o id=$x do formularza.
Super, gra !

Tylko jak teraz zapisać wprowadzone poprawki do bazy ?

No więc napisałem:
  1. if($_POST['adv_update'] != '' && $_SESSION['admin'] == 'ok'){
  2. if($_POST['adv_name'] != '') {
  3. if($_POST['adv_txt'] != '') {
  4. echo $_POST['2lp'];
  5. mysql_query("UPDATE ogloszenie SET nazwa='".$_POST['adv_name']."', tresc='".$_POST['adv_txt']."' WHERE id='".$_POST['2lp']."'");
  6. $tpl->set_var('ADV_ACTION', $adv_ok);
  7. } else { $tpl->set_var('ADV_ACTION', $adv_bad_name); }
  8. } else {
  9. $tpl->set_var('ADV_ACTION', $adv_bad_txt);
  10. }
  11. }


Aczkolwiek z tego co zdążyłem zauważyć nie odczytuje mi fragmentu zapytania: WHERE id='".$_POST['2lp']. - najnormalniej nie pobiera ID.

Macie jakieś rady ?

nikt nie ma pomysłu ?


--------------------
zmoderowano - waga i rozmiar
Go to the top of the page
+Quote Post

Posty w temacie


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: 18.07.2025 - 01:40