Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [MySQL][PHP]Wykonywanie bez wczytywania strony.
xxdrago
post 2.11.2011, 22:24:03
Post #1





Grupa: Zarejestrowani
Postów: 654
Pomógł: 42
Dołączył: 27.07.2010
Skąd: Jaworzno

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


Witam, jak mogę to wykonać bez otwierania nowego okna (zmiany adresu) chodzi o to , że po kliknięciu w link mam zostać na tej stronie co jestem,
a to sie ma wykonać (te zapytania). Proszę sie nie śmiać z kodu bo dopiero studiuje php smile.gif


  1. while($r = mysql_fetch_array($wynik)) {
  2. echo '<tr>';
  3. echo '<td class="row2">'.$r[0].'</td>'; // ID
  4. echo "<td class='row2'>".$r[1]."</td>"; // Nick
  5. echo "<td class='row2'>".$r[2]."</td>"; // E-Mail
  6. echo "<td class='row2'>".$r[3]."</td>"; // Haslo
  7. echo "<td class='row2'>".$r[4]."</td>"; // Gadu Gadu
  8. echo "<td class='row2'>".$r[5]."</td>"; // IP
  9. echo "<td class='row2'>".$r[6]."</td>"; // Data zamowienia
  10. echo "<td class='row2'>".$r[7]."</td>"; // Data zakonczenia
  11. echo "<td class='row2'>".$r[8]."</td>"; // Aktywne
  12. echo "<td class='row2'>".$r[9]."</td>"; // Kodsms
  13. echo "<td class='row2' style='text-align:center;'><a href='sklep_admin.php?a=del&id=".$r[0]."'><img src='images/icon_delete.gif' border='0'></a></td>"; // Usun danego Vipa/Premium
  14. echo "<td class='row2' style='text-align:center;'>";
  15. if ($r['aktywne'] < 1) {
  16. echo "<a href='sklep_admin.php?a=edit&id=".$r[0]."'><img src='images/icon_nieaktywny.gif' border='0'></a>";
  17. } else {
  18. echo "<a href='sklep_admin.php?a=edit&id=".$r[0]."'><img src='images/icon_aktywny.gif' border='0'></a>";
  19. }
  20. echo "</td>";
  21. echo "</tr>";
  22. }
  23. echo "</table>";
  24. }
  25. }
  26. #################### Usuwanie danych ##########################
  27. $a = trim($_GET['a']);
  28. $id = trim($_GET['id']);
  29.  
  30. if($a == 'del' and !empty($id)) {
  31. /* usuwamy rekord */
  32. mysql_query("DELETE FROM sklep WHERE id='$id'")
  33. or die('Błąd zapytania: '.mysql_error());
  34.  
  35. echo 'Rekord został usunęty z bazy';
  36. }
  37. #################### Zmiana danych ##########################
  38. $a = trim($_REQUEST['a']);
  39. $id = trim($_GET['id']);
  40.  
  41. if($a == 'edit' and !empty($id)) {
  42. $wynik = mysql_query("SELECT * FROM sklep WHERE id='$id'")
  43. or die('Błąd zapytania');
  44. if(mysql_num_rows($wynik) > 0) {
  45. $r = mysql_fetch_assoc($wynik);
  46. if ($r['aktywne'] < 1) {
  47. mysql_query("UPDATE sklep SET aktywne='1' WHERE id='$id'");
  48. } else {
  49. mysql_query("UPDATE sklep SET aktywne='0' WHERE id='$id'");
  50. }
  51. }
  52. }


Głownie o to:
  1. echo "<td class='row2' style='text-align:center;'><a href='sklep_admin.php?a=del&id=".$r[0]."'><img src='images/icon_delete.gif' border='0'></a></td>"; // Usun danego Vipa/Premium


Ten post edytował xxdrago 2.11.2011, 22:27:59


--------------------
GG: 10972302 :)
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 6)
Kostek.88
post 2.11.2011, 22:37:07
Post #2





Grupa: Zarejestrowani
Postów: 376
Pomógł: 47
Dołączył: 23.08.2007
Skąd: Warszawa

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


Masz 2 opcje:

1) wywolanie akcji dla tej samej strony co na niej jestes i wstawienie na gorze warunktow sprawdzajacych czy masz tablice $_GET o odpowiedniej nazwie. Zostanie Ci wtedy problem odswiezania, ktory zalatwisz header location i str_replace (chodzi o usuniecie z linku np ?a=del&id=xxx, by po odswiezeniu nie wywolywalo tej samej akcji znow)

2) AJAX, najprostsze wydaje mi sie to z jQuery

http://api.jquery.com/jQuery.ajax/
http://gajdaw.pl/ajax/jquery-tutorial/
Go to the top of the page
+Quote Post
xxdrago
post 2.11.2011, 23:08:46
Post #3





Grupa: Zarejestrowani
Postów: 654
Pomógł: 42
Dołączył: 27.07.2010
Skąd: Jaworzno

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


A jeszcze jedno ma pytanie jeżeli w bazie mam zapisany wynik w sekundach np. 1320158281 i chciałbym dodać do tego np. 7 dni to jak to najlepiej zrobić?


--------------------
GG: 10972302 :)
Go to the top of the page
+Quote Post
Kostek.88
post 2.11.2011, 23:24:09
Post #4





Grupa: Zarejestrowani
Postów: 376
Pomógł: 47
Dołączył: 23.08.2007
Skąd: Warszawa

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


Wydaje mi sie, ze po prostu 7*24*3600, czyli 7 dni x 24 godziny i 3600 sekund, bo tyle trwa wlasnie godzina. Otrzymasz 7 dni w sekundach.
Go to the top of the page
+Quote Post
croc
post 2.11.2011, 23:31:41
Post #5





Grupa: Zarejestrowani
Postów: 706
Pomógł: 108
Dołączył: 12.03.2010

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


Mam pytanie: dlaczego nie chcesz wczytywać strony? Pytam nie dlatego, że Twój pomysł jest zły, ale dlatego, że nie wiem czy znasz wszystkie możliwości rozwiązania tego problemu. Ja bym w tym przypadku odpuścił Ajax.
Go to the top of the page
+Quote Post
by_ikar
post 3.11.2011, 09:29:12
Post #6





Grupa: Zarejestrowani
Postów: 1 798
Pomógł: 307
Dołączył: 13.05.2009
Skąd: Gubin/Wrocław

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


Cytat
A jeszcze jedno ma pytanie jeżeli w bazie mam zapisany wynik w sekundach np. 1320158281 i chciałbym dodać do tego np. 7 dni to jak to najlepiej zrobić?


Kod
$date = new DateTime('@1320158281');
//wyświetlenie daty przed zmianą
echo $date->format('Y-m-d');
$date->modify('+1 weeks');
//wyświetlenie daty po zmianie
echo $date->format('Y-m-d');


Go to the top of the page
+Quote Post
xxdrago
post 3.11.2011, 16:37:17
Post #7





Grupa: Zarejestrowani
Postów: 654
Pomógł: 42
Dołączył: 27.07.2010
Skąd: Jaworzno

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


error:

Fatal error: Class 'DateTime' not found in C:\Program Files\xampp\htdocs\


--------------------
GG: 10972302 :)
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: 24.07.2025 - 21:45