Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: edycja danych
Forum PHP.pl > Forum > Bazy danych > MySQL
rfelijak
Witam

napisalem w php stronke korzystajaca z bazy danych...jedyne co moge poki co zobic to pzegladac rekordy, dodawac i usuwac....a chcialbym zrobic edycje tych wlasnie rekoordow....
dokladnie chodzi mi o takie cos:
wyswietlam wszystkie produkty w sklepie i chce miec mozliwosc edycji jednego z nich....nie chce usuwac i dodawac na nowo....a chce kliknac przycisk np. "edytu" i moc zmieniac poszczegolne pola...
nie mam zielonego pojecia ja sie za to zabrac

bede wdzieczny za wszelkie wskazowki

z gory dzieki za pomoc

pozdrawiam
rafal
JaRoPHP
Cytat(rfelijak @ 20.06.2007, 21:29:29 ) *
a chce kliknac przycisk np. "edytu" i moc zmieniac poszczegolne pola...
Moja propozycja - obok każdego rekordu jest przycisk (link) EDYTUJ, którym w adresie przekazujesz id owego rekordu. Po kliknięciu przycisku następuje przejście do strony z formularzem, w którym edytujesz ów rekord.
Na sam koniec (wysłanie formularza), odczytujesz id rekordu z adresu i zapytaniem sql-a dokonujesz edycji w bazie, coś w stylu:
  1. <?php
  2. $sql = "UPDATE tabela SET pole1 = wartosc1, pole2 = wartosc2 WHERE idRekordu = " . $_GET['idRekordu'];
  3. mysq_query($sql) or die(mysql_error());
  4. ?>
rfelijak
wszytko byloby ok, gdybym potrafil zrobic formularz(stronke do edycji danych), ktorego pola sa wypelnione wlasnie starymi danymi - zeby nie trzebabylo zmieniac wszystkich danych a tylko wybrane...
a poza tym nie bardzo wiem jak zrobic link do podstrony formularza za rekordem gdy wyswietlam je w ten sposob:
  1. <?php
  2. while($row=mysql_fetch_array($result, MYSQL_NUM)) {
  3. echo "<tr>
  4. <td align="left">$row[0]</td>
  5. <td align="left">$row[1]</td>
  6. </tr>n";
  7. }
  8. ?>


dodanie kolejnej kolumny zawierajacej: include('edycja.php'), gdzie plik edycja.php zawiera link do formularza jakos nie dziala....nie bardzo wiem co z tym zrobic....

z gory dzieki za pomoc

pozdrawiam
rfelijak
JaRoPHP
- link (nie znam struktury bazy, ale mam nadzieję, że masz jakiś klucz głowny, dla potrezb przyjmę, że będzie on w pierwszej kolumnie ($row[0])):
  1. <?php
  2. while($row=mysql_fetch_array($result, MYSQL_NUM)) {
  3.  echo "<tr>
  4.  <td align="left">$row[1]</td>
  5.  <td align="left">$row[2]</td>
  6.  <td align="left"><a href="skryptDoEdycji.php?id="".$row[0]."</td>
  7.  </tr>n";
  8. }
  9. ?>

- formularz: na stronie robisz formularz z wartościami domyslnymi value, te wartości odczytaj z bazy (masz już w adresie id rekordu ($_GET['id']), więc wystarczy:
  1. SELECT * FROM tabela WHERE id = wartoscZAdresu


---
Nie przepisuj tego bezmyślnie. Moga być literówki (nie sprawdzane)... Raczej zastanów się, jak to powinno działać i powalcz smile.gif. Jak będą kłopoty, to pisz.
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.