Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Jak po kliknięciu na link zaktualizować bazę bez odświerzania strony?
Forum PHP.pl > Forum > PHP
KIT3
Witam,
Pisze prostą księgę gości na przyjęcie weselne.
Mam problem z aktualizacją danych do bazy danych, a mianowicie:


Napisałem skrypt który pobiera mi z bazy danych wartości i podstawia w parametr "value" pola tekstowego, dzięki czemu łata jest zmiana określonej wartości(tudzież edycja). Nie mam wogóle pomysłu na to, by teraz, jak użytkownik zmieni to co zostalo pobrane z bazy, po wciśnięciu jakiegoś przycisku, bądź linka, wartości te uaktualniły się w bazie danych?

Poniżej przedstawiam kod jaki napisałem do pobierania danych z bazy:
  1. <?php
  2. <table border=\"1\" class=\"formularz_tresc\">
  3. <tr><td>lp.</td><td><center>nazwisko</center></td><td><center>ona</center></td><td><center>on</center></td><td><center>osoba towarzysząca*</center></td><td><center>dzieci</center></td><td><center>ilość osób</center></td></tr>
  4. ";
  5.    $pyt = "SELECT * FROM `kg".$xuser."`";
  6. $result = mysql_query($pyt)
  7.    or die(mysql_error());
  8. while ($row = mysql_fetch_array($result))
  9.    {
  10.    extract ($row);
  11.    $s=10;
  12. <tr><td><center>".$idgoscia."</center></td>
  13. <td><center><input size=\"".$s."\" type=text name=\"nazwisko".$idgoscia."\" value=\"".$nazwisko."\" maxlength=\"50\"></center></td>
  14. <td><center><input size=\"".$s."\" type=text name=\"his".$idgoscia."\" value=\"".$her."\" maxlength=\"50\"></center></td>
  15. <td><center><input size=\"".$s."\" type=text name=\"her".$idgoscia."\" value=\"".$him."\" maxlength=\"50\"></center></td>
  16. <td><center><input size=\"25\" type=text name=\"osobatowarzyszaca".$idgoscia."\" value=\"".$osobatowarzyszaca."\" maxlength=\"50\"></center></td>
  17. <td><center><input size=\"".$s."\" type=text name=\"dzieci".$idgoscia."\" value=\"".$dzieci."\" maxlength=\"50\"></center></td>
  18. <td><center><input size=\"".$s."\" type=text name=\"iloscosob".$idgoscia."\" value=\"".$iloscosob."\" maxlength=\"50\"></center></td></tr>
  19. ";
  20.    }
  21.    echo"
  22. <tr><td colspan=\"5\" align=\"right\">Suma:</td><td><center>&nbsp;</center></td><td><center>&nbsp;</center></td></tr>
  23. </table>
  24. ?>


`kg".$xuser."` - nazwa bazy danych. Do nazwy użytkownika dodawany jest przedrostek kg
Żeby zastosować unikalne nazwy (name) posłużyłem się zmienną $idgoscia. Np $idgoscia = 1 name = nazwisko1

Ale jak teraz zrobić, by dodać jakiś przycisk czy linka, żeby mi się to zaktualizowało w bazie ?
Proszę o jakieś sugestie. Z góry dziękuję.
bełdzio
wrzuc w szukaczke "ajax"
KIT3
Sugerujesz żeby użyć do tego celu Ajaxa, a dokładniej ?
marcio
A dokladnie poczytaj co to ajax i uzyj jakiegos gotowego liba jquery,mintAjax i jeszcze jakies tam sa 5 lini kodu.
korkie
Napiszę ci ogólnie, nie zagłębiając się w twój skrypt, bo czas mnie goni, ale chyba ci się to przyda.

  1. <?php
  2. if ( isset( $_POST['przycisk']) && $_POST['przycisk'] == 'Dodaj')
  3. {
  4. $x = "UPDATE tabela SET ..."; # Czy INSERt INTO, czy co tam potrzebujesz.
  5. $y = mysql_query($x);
  6. }
  7.  
  8. # Formularz do dodawania osób
  9. echo '<form action ="" method="post">'; #Wysyłamy formularz do skrypty w którym pracujemy.
  10. # Pola formularza
  11. echo '<input type="submit" value="przycisk" name="Dodaj">';
  12. echo '</form>';
  13. ?>


Nie potrzeba AJAXA do zauktualizowania strony po wypełnieniu pól formularza.
Masz przycisk submit.
Wysyłasz dane z formularza do strony na której pracujesz.
Robisz warunek, że gdy submit był kliknięty coś ma się wydarzyć - w twoim przypadku wpis do bazy.

pozdrawiam
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.