Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [HTML][MySQL][PHP] Wyświetlanie tabeli i usuwanie wierszy
skabszo
post
Post #1





Grupa: Zarejestrowani
Postów: 69
Pomógł: 0
Dołączył: 27.08.2004

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


Hej,

mam temat prosty (chyba) ale serio nie potrafię sobie z nim poradzić. Rozwiązania, które tutaj znalazłem na forum po prostu nie działały w przypadku mojego skryptu.. chcę by poza wyświetlaniem tabeli mysql (to działa) była możliwość usuwania wierszy. Oto co już mam:

  1. <?php
  2.  
  3.  
  4. $connection=mysql_connect('localhost','root','') or die(mysql_error());
  5.  
  6.  
  7. mysql_select_db('localhost_paula',$connection) or die(mysql_error());
  8.  
  9. $query=mysql_query("SELECT * FROM cms_contest") or die(mysql_error());
  10.  
  11. if(mysql_num_rows($query)>0):
  12.  
  13. ?>
  14. <form method="post" action="ursite.php">
  15. <table width="100%" border="0" class="mysql-table">
  16. <tr style="font-weight:bold;">
  17. <td align="center" class="heading">Id</td>
  18. <td align="center" class="heading">First Name</td>
  19. <td align="center" class="heading">Last Name</td>
  20. <td align="center" class="heading">Email</td>
  21. <td align="center" class="heading">Phone</td>
  22. <td align="center" class="heading">Answer</td>
  23. <td align="center" class="heading">DEL?</td>
  24. </tr>
  25. <?php
  26.  
  27. while($row=mysql_fetch_object($query)):?>
  28.  
  29. <tr>
  30. <td align="center" class="content"><?php echo $row->ID; //row id ?></td>
  31. <td align="center" class="content"><?php echo $row->name; // row first name ?></td>
  32. <td align="center" class="content"><?php echo $row->surname; //row las tname ?></td>
  33. <td align="center" class="content"><?php echo $row->email; //row created time ?></td>
  34. <td align="center" class="content"><?php echo $row->phone_number; //row created time ?></td>
  35. <td align="center" class="content"><?php echo $row->contest_answer; //row created time ?></td>
  36. <td align="center" class="content"><a href="#">DELETE</a></td>
  37. </tr>
  38. <?php endwhile;?>
  39. </table>
  40. </form>
  41.  
  42. <?php
  43.  
  44. else: ?>
  45. <h3>No Results found.</h3>
  46. <?php endif; ?>


najlepiej jakby to rozwiązanie nie wymagało przechodzenia na inną podstronę (oczywiście może i powinno przeładować stronę obecną..). dzięki za pomoc i wskazówki!
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
skabszo
post
Post #2





Grupa: Zarejestrowani
Postów: 69
Pomógł: 0
Dołączył: 27.08.2004

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


Hej,

próbowałem z PDO. Mam teraz coś takiego:

  1. <script type="text/javascript">
  2. function delete_id(id)
  3. {
  4. if(confirm('Sure to Delete ?'))
  5. {
  6. window.location.href='display_db_table.php?delete_id='+id;
  7. }
  8. }
  9. </script>
  10. <?php
  11. $user = 'root';
  12. $pass = '';
  13. $db = new PDO( 'mysql:host=localhost;dbname=localhost_paula', $user, $pass );
  14. $sql = "SELECT * FROM cms_contest";
  15. $query = $db->prepare( $sql );
  16. $query->execute();
  17. $results = $query->fetchAll( PDO::FETCH_ASSOC );
  18.  
  19. // delete condition
  20. if(isset($_GET['delete_id']))
  21. {
  22. $sql_query="DELETE FROM cms_contest WHERE user_id=".$_GET['delete_id'];
  23. mysql_query($sql_query);
  24. header("Location: $_SERVER[PHP_SELF]");
  25. }
  26. ?>
  27. <table width="100%" border="0" class="table mysql-table">
  28. <tr style="font-weight:bold;">
  29. <td align="center" class="heading">Id</td>
  30. <td align="center" class="heading">First Name</td>
  31. <td align="center" class="heading">Last Name</td>
  32. <td align="center" class="heading">Email</td>
  33. <td align="center" class="heading">Phone</td>
  34. <td align="center" class="heading">Answer</td>
  35. <td align="center" class="heading">DEL?</td>
  36. </tr>
  37. <?php foreach( $results as $row ){
  38. echo "<tr><td align=\"center\" class=\"content\">";
  39. echo $row['ID'];
  40. echo "</td><td align=\"center\" class=\"content\">";
  41. echo $row['name'];
  42. echo "</td><td align=\"center\" class=\"content\">";
  43. echo $row['surname'];
  44. echo "</td><td align=\"center\" class=\"content\">";
  45. echo $row['email'];
  46. echo "</td><td align=\"center\" class=\"content\">";
  47. echo $row['phone_number'];
  48. echo "</td><td align=\"center\" class=\"content\">";
  49. echo $row['contest_answer'];
  50. echo "</td>";
  51. echo "<td align=\"center\" class=\"content\">";
  52. echo "<a href=\"java script:delete_id('<?php echo $row[0]; ?>')\">X</a>";
  53. echo "</td></tr>";
  54. }
  55. ?>
  56. </table>



no i jak klikam że chcę usunąć, to strona się nie przeładowuje, tylko przechodzi de facto do strony którą includuję tj. display_db_table.php z błędem w ostatniej kolumnie:

Cytat
Notice: Undefined offset: 0 in .....\display_db_table.php on line 53


Dlaczego tak jest? (nie chodzi o to, że javascript tutaj występuje jako "java script". Próbowałem poprawić post, ale nie da się tego zrobić normalnie..)

Ten post edytował skabszo 22.08.2015, 17:27:20
Go to the top of the page
+Quote Post

Posty w temacie


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

 



RSS Aktualny czas: 3.10.2025 - 12:20