Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [MySQL][PHP]Wyswietlenie danych z sql + edycja
Forum PHP.pl > Forum > Przedszkole
shaolin33
witam,

Stworzyłem formularz php który zapisuje mi dane do bazy mysql, nastepnie wyciągam sobie te dane i tworze tabelki i chcaiłbym aby dane rekordy ktore wyciagam zeby dalo sie je edytowac, przy kazdym rekordzie żeby był przycisk edytuj


jak to najprościej rozwiązać ?


przykład

sorka za jakosć przykładu smile.gifsmile.gif

jesli temat był już na forum to prosze o linka a to prosze skasowac bo mnie sie tego znalexc nie udalo smile.gif
CuteOne
  1. <a href="edycja.php?id=<?=$row['id'];?>">edytuj</a>

$row['id'] jest to unikalny dla danego rekordu identyfikator
shaolin33
Cytat(CuteOne @ 28.06.2013, 09:03:51 ) *
  1. <a href="edycja.php?id=<?=$row['id'];?>">edytuj</a>

$row['id'] jest to unikalny dla danego rekordu identyfikator



ale musze w bazie utworzyc sobie id prawda ?
rtech.projekty.php
Najprostszym rozwiązaniem będzie wyświetlenie danych, przy czym w każdym wyświetlonym rekordzie
dodajesz przyciski edytuj/usuń, które po naciśnięciu spowodują wywołanie odpowiedniej funkcji.
Do tych funkcji wkładasz argument, który jest identyfikatorem ID danego rekordu.
Ostatecznie funkcja, która zostaje wywołana edytuje, bądź usuwa z bazy rekord o wskazanym ID.

Podobną tabelkę, którą prezentujesz buduje się w html.

Jeśli liczysz na jakąś konkretną pomoc, wysil się, napisz dokładnie czego nie wiesz (jak włączyć komputer, jak
napisać funkcję w php itp), użyj polskiej gramatyki, a na pewno dowiesz się czegoś bardziej szczegółowego.
CuteOne
@shaolin33 tak smile.gif
shaolin33
Cytat(CuteOne @ 28.06.2013, 09:18:26 ) *
@shaolin33 tak smile.gif


co by samo sie gogawalo numerowanie czyli tak:



id int(5) NOT NULL auto_increment,


Cytat(rtech.projekty.php @ 28.06.2013, 09:12:20 ) *
Najprostszym rozwiązaniem będzie wyświetlenie danych, przy czym w każdym wyświetlonym rekordzie
dodajesz przyciski edytuj/usuń, które po naciśnięciu spowodują wywołanie odpowiedniej funkcji.
Do tych funkcji wkładasz argument, który jest identyfikatorem ID danego rekordu.
Ostatecznie funkcja, która zostaje wywołana edytuje, bądź usuwa z bazy rekord o wskazanym ID.

Podobną tabelkę, którą prezentujesz buduje się w html.

Jeśli liczysz na jakąś konkretną pomoc, wysil się, napisz dokładnie czego nie wiesz (jak włączyć komputer, jak
napisać funkcję w php itp), użyj polskiej gramatyki, a na pewno dowiesz się czegoś bardziej szczegółowego.




ok zrobiłem tabelkę, pobieram dane

  1. <?
  2. $connection = @mysql_connect('localhost', 'root', 'admin') or die('Brak połączenia z serwerem MySQL');
  3. $db = @mysql_select_db('rejestr', $connection) or die('Nie mogę połączyć się z bazą danych');
  4. ?>
  5.  
  6. <head>
  7.  
  8. <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
  9.  
  10. <title>LISTA REJESTRÓW</title>
  11. </head>
  12.  
  13.  
  14. <?
  15. echo '<table border="1">' ;
  16. $wynik = mysql_query("SELECT * FROM rejestr_zdarzen") or die('Błąd zapytania');
  17.  
  18.  
  19.  
  20. echo '<tr> <td>ID</td><td>DATA</td> <td>KATEGORIA</td><td>RODZAJ</td><td>OPIS</td><td>KR/RR</td><td>DATA WYSTĄP.</td><td>DATA UJAWN.</td><td>ZGŁASZAJĄCY</td><td>CZAS TRWANIA</td><td>ILOŚĆ ZDARZEŃ</td><td>WYCENA</td><td>TYP</td><td>KATEGORIA STRATY</td><td>LINIA BIZNESOWA</td><td>EDYCJA</td> </tr>';
  21. while ($wiersz = mysql_fetch_array($wynik)) {
  22. echo '<tr> <td>'. $wiersz[0] .'</td><td>'. $wiersz[1] .'</td> <td>'. $wiersz[2] .'</td><td>'. $wiersz[3] .'</td><td>'. $wiersz[4] .'</td><td>'. $wiersz[5] .'</td><td>'. $wiersz[6] .'</td><td>'. $wiersz[7] .'</td><td>'. $wiersz[8] .'</td><td>'. $wiersz[9] .'</td><td>'. $wiersz[10] .'</td><td>'. $wiersz[11] .'</td><td>'. $wiersz[12] .'</td><td>'. $wiersz[13] .'</td><td>'. $wiersz[14] .'</td><td>'.$zmienna_edycja.'</td> </tr>';
  23. }
  24.  
  25. echo '</table>' ;?>


ale nei wiem teraz jak utworzyć ta zmienna do edycji: $zmienna_edycja
CuteOne
1. Korzystaj z tablic asocjacyjnych np.
  1. zamiast
  2. $wiersz[1]
  3. podmień na nazwę kolumny z bazy
  4. $wiersz['id']


2. Napisałem w jaki sposób tworzyć link do edycji..
shaolin33
Cytat(CuteOne @ 28.06.2013, 10:49:00 ) *
1. Korzystaj z tablic asocjacyjnych np.
  1. zamiast
  2. $wiersz[1]
  3. podmień na nazwę kolumny z bazy
  4. $wiersz['id']


2. Napisałem w jaki sposób tworzyć link do edycji..



ok czyli mam tutaj teraz stworzyć tą zmienna: $zmienna_edycja. czyli link?

tyle że potrzebuje pomocy bo tego sam nie ogarne smile.gif


i jeszcze pytanie jak ma wygladac edycja.php ?

cos w tym stylu:

  1. <input name="data_rej_1" value="<? echo $dane[1]; ?>" size="10" />
b4rt3kk
Zrób tak:

  1. echo '<table border="1">' ;
  2. $wynik = mysql_query("SELECT * FROM rejestr_zdarzen") or die('Błąd zapytania');
  3.  
  4.  
  5.  
  6. echo '<tr> <td>ID</td><td>DATA</td> <td>KATEGORIA</td><td>RODZAJ</td><td>OPIS</td><td>KR/RR</td><td>DATA WYSTĄP.</td><td>DATA UJAWN.</td><td>ZGŁASZAJĄCY</td><td>CZAS TRWANIA</td><td>ILOŚĆ ZDARZEŃ</td><td>WYCENA</td><td>TYP</td><td>KATEGORIA STRATY</td><td>LINIA BIZNESOWA</td><td>EDYCJA</td> </tr>';
  7. while ($wiersz = mysql_fetch_array($wynik)) {
  8. echo '<tr> <td>'. $wiersz[0] .'</td><td>'. $wiersz[1] .'</td> <td>'. $wiersz[2] .'</td><td>'. $wiersz[3] .'</td><td>'. $wiersz[4] .'</td><td>'. $wiersz[5] .'</td><td>'. $wiersz[6] .'</td><td>'. $wiersz[7] .'</td><td>'. $wiersz[8] .'</td><td>'. $wiersz[9] .'</td><td>'. $wiersz[10] .'</td><td>'. $wiersz[11] .'</td><td>'. $wiersz[12] .'</td><td>'. $wiersz[13] .'</td><td>'. $wiersz[14] .'</td><td><a href="edytuj_rekord.php?id='.$wiersz['id'].'">Edytuj</a></td> </tr>';
  9. }
  10.  
  11. echo '</table>' ;?>


Następnie tworzysz sobie plik edytuj_rekord.php.

  1. <?php
  2.  
  3. echo $_GET['id'];
  4.  
  5. // znów musisz pobrać dane z bazy, tylko tym razem dla jednego rekordu, zbudować formularz i wrzucić wartości do odpowiednich inputów
  6.  
  7. ?>
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.