Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: usuwanie rekordów z tabeli
Forum PHP.pl > Forum > PHP
maras_
Witam. Chodzi o to, że po wpisaniu tekstu i kliknięciu łącza wyślij pojawia się kolejny komunikat
  1. Notice:
  2. Undefined index: id in D:\Program Files\wamp\www\challenge.php on line 62
  3. Notice: Undefined index: joketext in D:\Program Files\wamp\www\challenge.php on line 63 usun ten kawal


Czy ktoś mi powie gdzie jest błąd? Dlaczego nie wyswietla sie tekst a obokn iego łącze usuń ? Prosiłbym o jasą odpowiedź smile.gif

  1. <?php if (isset($_GET['addjoke']))
  2. ?>
  3. <form action="<?php echo $_SERVER['PHP_SELF']; ?>" method="post">
  4. <label>Wpisz swoj kawal:<br />
  5. <textarea name="tekst_kawalu" rows="10" cols="40">
  6. </textarea></label></br>
  7. <input type="submit" value="wyslij" />
  8. </form>
  9. <?php
  10.  
  11. $polacz = mysql_connect ('localhost','marek','marek123','kawal');
  12. if (!mysql_select_db('kawaly')){
  13. echo 'nie wybrano bazy';
  14. }
  15. if (!$polacz){
  16. echo 'blad polaczenia';
  17. }
  18. else {
  19. echo 'polaczono';
  20. }
  21.  
  22. if (isset($_POST['tekst_kawalu'])){
  23. $joketext = $_POST['tekst_kawalu'];
  24. $sql = "insert into kawal set tekst_kawalu = '$joketext',
  25. data_kawalu = curdate()";
  26.  
  27. if (mysql_query($sql)){
  28. echo 'dodano kawal';
  29. }
  30. else{
  31. echo 'blad' . mysql_error();
  32. }
  33. }
  34.  
  35. if(isset($_GET['deletejoke'])){
  36. $jokeid = $_GET['deletejoke'];
  37. $sql = "DELETE FROM kawal WHERE id=$jokeid";
  38. if(mysql_query($sql)){
  39. echo '<p>Kawal zostal usuniety.</p>';
  40. }
  41. else{
  42. echo'Blad podczas usuwania';
  43. }
  44. }
  45. echo 'oto lista kawalow';
  46.  
  47. $result = @mysql_query("select tekst_kawalu from kawal");
  48. if (!$result){
  49. exit ('Błąd zapytania');
  50. }
  51.  
  52. while ($row = mysql_fetch_array($result)){
  53. $jokeid = $row['id'];
  54. $joketext = $row['joketext'];
  55.  
  56. echo '<p>' . $joketext . ' <a href ="' . $_SERVER['PHP_SELF'] . '?deletejoke = ' . $jokeid . '">' .
  57. 'usun ten kawal</a></p>';
  58. }
  59.  
  60. ?>
ziqzaq
Przypatrz się temu zapytaniu (jakie kolumny pobierasz):
  1. $result = @mysql_query("select tekst_kawalu from kawal");

a teraz do jakich kolumn się odwołujesz:
  1. $jokeid = $row['id'];
  2. $joketext = $row['joketext'];
paw-e-l
w linii 48 pobierasz tylko z kolumny tekst_kawalu. w liniach 54 i 55 jest bląd gdyż chcesz uzyskać wartości które nie są zwracane przez zapytanie.

spóźniłem się winksmiley.jpg
ziqzaq
Chciałem edytować, ale już ~paw-e-l odpisał.
Taka rada dla autora wątku. Jak wyskakuje ci błąd, że odwołujesz się do nieistniejącego indeksu w tablicy to spróbuj najpierw wyświetlić tą tablicę za pomocą "print_r($tablica)" i zobaczyć co ta tablica zawiera. Ułatwi ci to życie.
maras_
No więc kod wygląda nastepująco. A łącze usuń nie działa. To pewnie banalne błedy w zapytaniach ale jak sami widzicie jestem początkujący smile.gif

  1. <?php if (isset($_GET['addjoke']))
  2. ?>
  3. <form action="<?php echo $_SERVER['PHP_SELF']; ?>" method="post">
  4. <label>Wpisz swoj kawal:<br />
  5. <textarea name="tekst_kawalu" rows="10" cols="40">
  6. </textarea></label></br>
  7. <input type="submit" value="wyslij" />
  8. </form>
  9. <?php
  10.  
  11. $polacz = mysql_connect ('localhost','marek','marek123','kawal');
  12. if (!mysql_select_db('kawaly')){
  13. echo 'nie wybrano bazy';
  14. }
  15. if (!$polacz){
  16. echo 'blad polaczenia';
  17. }
  18. else {
  19. echo 'polaczono';
  20. }
  21.  
  22. if (isset($_POST['tekst_kawalu'])){
  23. $joketext = $_POST['tekst_kawalu'];
  24. $sql = "insert into kawal set tekst_kawalu = '$joketext',
  25. data_kawalu = curdate()";
  26.  
  27. if (mysql_query($sql)){
  28. echo 'dodano kawal';
  29. }
  30. else{
  31. echo 'blad' . mysql_error();
  32. }
  33. }
  34.  
  35. if(isset($_GET['deletejoke'])){
  36. $jokeid = $_GET['deletejoke'];
  37. $sql = "DELETE FROM kawal WHERE id=$jokeid";
  38. if(mysql_query($sql)){
  39. echo '<p>Kawal zostal usuniety.</p>';
  40. }
  41. else{
  42. echo'Blad podczas usuwania';
  43. }
  44. }
  45. echo 'oto lista kawalow';
  46.  
  47. $result = @mysql_query("select tekst_kawalu from kawal");
  48. if (!$result){
  49. exit ('Błąd zapytania');
  50. }
  51.  
  52. while ($row = mysql_fetch_array($result)){
  53. $jokeid = $row['tekst_kawalu'];
  54. $joketext = $row['tekst_kawalu'];
  55.  
  56. echo '<p>' . $joketext . ' <a href ="' . $_SERVER['PHP_SELF'] . '?deletejoke = ' . $jokeid . '">' . 'usun ten kawal</a></p>';
  57. }
  58.  
  59. ?>
ziqzaq
Nie pobierasz id.
  1. $result = @mysql_query("select tekst_kawalu from kawal");

Zacznij analizować kod a nie leć od razu na forum. Bez jaj chłopie.

// PS. To nie jest jedyny błąd w twoim kodzie. Drugi znajdź sam.
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.