Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [MySQL][HTML][PHP] Mydyfikacja rekordów w tabelce, Linki się gryzą :)
lukaszk
post 2.01.2011, 10:29:56
Post #1





Grupa: Zarejestrowani
Postów: 159
Pomógł: 0
Dołączył: 21.12.2010

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


Witam, zakłam nowy temat gdyż nie wiem jak to przeskoczyć i samemu zrobić a blokuje mnie to
mam tabele w PA w którym np usuwam rekord czy zwiększam licznik +
tym kodem
  1. <td><a href=\"toplistasql.php?a=plus&amp;id={$r['id_glos']}\"><center><img border=0 src=include/images/up.gif></center></a></td>


mam również linki w PA przykładowo
  1. <li><a href="index.php?id=phpinfo">PhpInfo</a></li>


Panel administracyjny to index.php a do niego są ładowane podstrony dzięki <div id="postcontent">
  1. <?php
  2. $DIR="include/"; // folder gdzie znajdują się podstrony
  3.  
  4. $id=$_GET['id'];
  5.  
  6. $str = strtoupper($id);
  7.  
  8. //echo "<h1>$str</h1><br />";
  9.  
  10. if ( $id =="" ){
  11.  
  12. include($DIR."date.php"); // plik który pokazuje jako pierwszy na stronie głównej
  13.  
  14. }
  15.  
  16. else {
  17.  
  18. if(file_exists($DIR.$id.'.php')){
  19.  
  20. include ($DIR.$id.".php");
  21.  
  22. } else {
  23.  
  24. echo "Taki dział nie istnieje :)";
  25.  
  26. }
  27.  
  28. }
  29.  
  30. ?>


Problem jest taki że po kliknięciu np usuń usuwa ale i otwiera stronę której nie ma czyli działa else w powyższym kodzie.
Czynności takie jak usuń znajdują się w pliku toplistasql.php ustawiałem różne inne i zawsze gdzieś mnie przenosi.
Jak to obejść? Proszę o pomoc
Poniżej fragment kodu odposiadający usuwaniu danych.
  1. a = trim($_GET['a']);
  2. $id = trim($_GET['id']);
  3. if($a == 'del' and !empty($id)) {
  4. /* usuwamy rekord */
  5. mysql_query("DELETE FROM top_vote WHERE id_glos='$id'")
  6. or die('Błąd zapytania: '.mysql_error());
  7. echo 'Rekord został usunęty z bazy';
Go to the top of the page
+Quote Post
potreb
post 2.01.2011, 12:10:39
Post #2





Grupa: Zarejestrowani
Postów: 1 568
Pomógł: 192
Dołączył: 7.03.2005
Skąd: Warszawa

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


Masz błąd w zapytaniu, zresztą to co zbudowałeś, a raczej oparłeś swój system administracyjny jest trochę kiepski.
Masz jeden index, który jest jakby routerem, jeżeli nie przydzielisz do niego id czyli pliku który nie istnieje i nie odnajdzie go wystąpi błąd. ID również może być id rekordu, więc troche to spaprałeś. Zapewne plik phpinfo.php można uruchomić bez problemu, bo nie jest zabezpieczony.


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

Go to the top of the page
+Quote Post
lukaszk
post 2.01.2011, 12:15:04
Post #3





Grupa: Zarejestrowani
Postów: 159
Pomógł: 0
Dołączył: 21.12.2010

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


Jest to w budowie więc niejest zabezpieczone zrobię to na końcu.


Więc jak lepiej zbudować PA na jakiej zasadzie.

Tak wygląda plik index.php do którego są ładowane podstrony z folderu include
natomiast na podstronach są poszczególne czynności.

  1. <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
  2. <title>Panel Administracyjny v 1.0</title>
  3. <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-2" />
  4. <meta http-equiv="Content-Language" content="pl" />
  5. <meta name="Description" content="" />
  6. <meta name="Keywords" content="" />
  7. <meta name="revisit-after" content="10" />
  8. <link rel="stylesheet" type="text/css" href="css/style_admin.css" />
  9.  
  10. <script type="text/javascript" src="jquery/jquery-1.4.2.min.js"></script>
  11.  
  12. <script language=JavaScript>
  13. function textCounter(field, countfield, maxlimit) {
  14. if (field.value.length > maxlimit)
  15. field.value = field.value.substring(0, maxlimit);
  16. else
  17. countfield.value = maxlimit - field.value.length;
  18. }
  19. <script language="JavaScript">
  20. <!--
  21. function emo(emo){
  22. document.all.comment.value += emo;
  23. document.all.comment.focus();
  24. return;
  25. }
  26. //-->
  27. <script type="text/javascript">
  28. $(document).ready(function()
  29. {
  30. $(".SlideMenu1_Folder div").click(function()
  31. {
  32. if ($(this).parent().find('ul').is(':hidden'))
  33. {
  34. $(this).parent().find('ul').slideDown();
  35. }
  36. else
  37. {
  38. $(this).parent().find('ul').slideUp();
  39. }
  40. });
  41. });
  42.  
  43. <script type="text/javascript" src="modules/tiny_mce/tiny_mce.js"></script>
  44. <script type="text/javascript">
  45. tinyMCE.init({
  46. // mode : "textareas",
  47. mode : "exact",
  48. theme : "advanced",
  49. plugins : "fullpage",
  50. theme_advanced_toolbar_location : "top",
  51. theme_advanced_resizing : "true",
  52. language : "pl",
  53. elements : "z_tiny"
  54.  
  55. });
  56.  
  57. </head>
  58. <div id="top">
  59. <div style="color:#000000;font-size:20px;font-family:Verdana;font-weight:normal;font-style:normal;text-decoration:none" id="basicclock"></div>
  60. <script type="text/javascript">
  61. function clock()
  62. {
  63. var digital = new Date();
  64. var hours = digital.getHours();
  65. var minutes = digital.getMinutes();
  66. var seconds = digital.getSeconds();
  67. if (minutes <= 9) minutes = "0" + minutes;
  68. if (seconds <= 9) seconds = "0" + seconds;
  69. dispTime = hours + ":" + minutes + ":" + seconds;
  70.  
  71. var basicclock = document.getElementById('basicclock');
  72. basicclock.innerHTML = dispTime;
  73. setTimeout("clock()", 1000);
  74. }
  75. clock();
  76.  
  77.  
  78. <?php
  79.  
  80. echo "Naglowek serwisu";
  81. echo "<br>";
  82. include "include/data.php";
  83. ?>
  84. </div><br>
  85. <div id="SlideMenu1" style="position:absolute;width:173px;height:auto;z-index:0">
  86. <ul>
  87. <li class="SlideMenu1_Folder"><div><a href="#">NEWSY</a></div>
  88. <ul>
  89. <li><a href="index.php?id=add_art">Dodaj</a></li>
  90. <li><a href="index.php?id=art_add_list">Zarzadzaj</a></li>
  91. </ul>
  92. </li>
  93. <li class="SlideMenu1_Folder"><div><a href="#">UŻYTKOWNICY</a></div>
  94. <ul>
  95. <li><a href="index.php?id=select_new_users">Lista</a></li>
  96. <li><a href="index.php?id=select_users_active">Zarzadzaj</a></li>
  97. <li><a href="index.php?id=select_users_not_active">Nieaktywni</a></li>
  98. <li><a href="index.php?id=select_users_ban_list">Banlista</a></li>
  99. </ul>
  100. </li>
  101. <li class="SlideMenu1_Folder"><div><a href="#">BANNERY</a></div>
  102. <ul>
  103. <li><a href="index.php?id=add_banner">Dodaj</a></li>
  104. <li><a href="index.php?id=select_banner_active">Wyswietlane</a></li>
  105. <li><a href="index.php?id=select_banner_not_active">Wstrzymane</a></li>
  106. </ul>
  107. </li>
  108. <li class="SlideMenu1_Folder"><div><a href="#">FILMY</a></div>
  109. <ul>
  110. <li><a href="index.php?id=add_film_youtube">Dodaj film</a></li>
  111. <li><a href="index.php?id=select_filmy_active">Zarzadzaj</a></li>
  112. </ul>
  113. </li>
  114. <li class="SlideMenu1_Folder"><div><a href="#">Pozycjonowanie</a></div>
  115. <ul>
  116. <li><a href="index.php?id=pozycjonowanie">Ustawienia</a></li>
  117. <li><a href="index.php?id=sitemap">SiteMap</a></li>
  118. </ul>
  119. </li>
  120.  
  121. </ul>
  122. <li class="SlideMenu1_Folder"><div><a href="#">Moduły</a></div>
  123. <ul>
  124. <li><a href="index.php?id=toplista_txt">Toplista TXT</a></li>
  125. </ul>
  126. <ul>
  127. <li><a href="index.php?id=toplista_sql">Toplista SQL</a></li>
  128. </ul>
  129. <ul>
  130. <li><a href="index.php?id=toplista_sql_list">Toplista SQL List</a></li>
  131. </ul>
  132. <ul>
  133. <li><a href="index.php?id=rotator_zdjec">Losowe zdjęcia</a></li>
  134. </ul>
  135. <ul>
  136. <li><a href="index.php?id=toplista_sql_test">Toplista SQL Test</a></li>
  137. </ul>
  138. </li>
  139. <li class="SlideMenu1_Folder"><div><a href="#">Kontakt</a></div>
  140. <ul>
  141. <li><a href="index.php?id=send_mail_admin">Zglos uwagi</a></li>
  142. </ul>
  143. <ul>
  144. <li><a href="index.php?id=mail_dziala">Kontakt</a></li>
  145. </ul>
  146. </li>
  147. <li class="SlideMenu1_Folder"><div><a href="#">Info</a></div>
  148. <ul>
  149. <li><a href="index.php?id=info_user">UserInfo</a></li>
  150. </ul>
  151. <ul>
  152. <li><a href="index.php?id=info_user2">UserInfo</a></li>
  153. </ul>
  154. <ul>
  155. <li><a href="index.php?id=info_user3">UserInfo</a></li>
  156. </ul>
  157. <ul>
  158. <li><a href="index.php?id=phpinfo">PhpInfo</a></li>
  159. </ul>
  160. </li>
  161. </ul>
  162. </div>
  163.  
  164.  
  165.  
  166. <center><div id="postcontent">
  167.  
  168. <?php
  169. $DIR="include/"; // folder gdzie znajdują się podstrony
  170.  
  171. $id=$_GET['id'];
  172.  
  173. $str = strtoupper($id);
  174.  
  175. //echo "<h1>$str</h1><br />";
  176.  
  177. if ( $id =="" ){
  178.  
  179. include($DIR."date.php"); // plik który pokazuje jako pierwszy na stronie głównej
  180.  
  181. }
  182.  
  183. else {
  184.  
  185. if(file_exists($DIR.$id.'.php')){
  186.  
  187. include ($DIR.$id.".php");
  188.  
  189. } else {
  190.  
  191. echo "Taki dział nie istnieje :)";
  192.  
  193. }
  194.  
  195. }
  196.  
  197. ?>
  198.  
  199.  
  200.  
  201.  
  202. </div></center>
  203.  
  204. </body>
  205. </html>
  206.  


Ten post edytował lukaszk 2.01.2011, 12:24:18
Go to the top of the page
+Quote Post
potreb
post 2.01.2011, 12:24:49
Post #4





Grupa: Zarejestrowani
Postów: 1 568
Pomógł: 192
Dołączył: 7.03.2005
Skąd: Warszawa

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


Ogólnie nie korzystałem z pliku index, który załączał pliki tylko każdy był tak jakby tym twoim index-em. Oczywiście to też rozwiązanie nie jest dobre, najlepsze to framework. Jednak to wszystko zależy od tego jak spoglądasz na projekt. Ogólnie należy znaleźć najbardziej optymalne rozwiązanie, które ułatwi ci budowanie serwisu.


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

Go to the top of the page
+Quote Post
lukaszk
post 3.01.2011, 12:04:23
Post #5





Grupa: Zarejestrowani
Postów: 159
Pomógł: 0
Dołączył: 21.12.2010

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


y

Ten post edytował lukaszk 3.01.2011, 12:06:33
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: 18.07.2025 - 09:02