Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP/MySQL] Zarządzanie formularzem
Forum PHP.pl > Forum > PHP
xajart
Witam. 

Zaczełem dzisiaj realizować formularz który pełni role zarządzania linkami.
I na ten przykład najpierw dane wyświetlam z Bazy Danych a następnie można je modyfikować tylko problem mi się pojawił jak wiele danych zapisać do bazy danych.

Przykład wysietlenia danych:
id --- title --- link
1 --- name1 - link1
2 --- tekst -- link4
5 --- tekst2 - link2



Chodzi mi o to jak za pomocą formularza przekazac te dane przez POST by następnie zaaktualizować je, bo pola title i link można swobodnie edytować.

Dodatkowe ograniczenia: 
dane chce by były zapisywane wg id które jest unikalne. 

Wyświetlanie itp wszystko jest zrobione, ale nie wiem jak wiele rekordów zapisać naraz, myslałem o nadawaniu unikalnych nazw (w petli wyświetlającej) w stylu id_numer, title_numer, link_numer. Ale coś mi to nie wychodzi. Napewno macie jakiś pomysł na to ?
Lonas
Mozna np tak :

  1. <?php
  2. $sql = mysql_query("Select * FROM tablica");
  3.  
  4. while($dane = mysql_fetch_array($sql)){
  5.  echo "<input type="text" name="id" value="$dane['id']" />";
  6.  echo "<input type="text" name="link" value="$dane['link']" /> <br>";
  7. }
  8. ?>


wyswietlasz sobie dane w inputach - nastepnie wysylach je postem - odbierasz i robsz update bazy
Pisalem z palca :_)
xajart
W taki właśnie sposób mam zrobione wyświetlanie danych, ale z racji że jest to forma panela administracyjnego, to chce by była możliwośc jej edycji i tak też jest. Teraz kwestia jest tego że jak wpisze w danym polu coś (czyli zmienie jego treść) to po wciśnięciu przycisku "zapisz" chce by wszystkie wiersze wyświetlane (zaaktualizował w bazie danych o nowe wartości).

I tu mam problem bo jak przekazuje formularz metodą post to id title jest puste. Zapewne dlatego że jest to wykonywane w pętli i pola typu 
Kod
<input type="text" name="title" value="$dane[$i]" />
<input type="text" name="title" value="$dane[$i]" />
...



Powtarza sie wielokrotnie przez co POST["title"], jest odwołaniem ogólnym a nie konkretnym do wskazanego elementu. I tu mój problem się zaczyna, że nie wiem jak to rozwiązać. aby pobrać wszystkie pokolei wartości id, title i link i zaaktualizowac je w Bazie Danych (przez UPDATE, po id).

PS. Zaglądne tu za 2 godzinny musze sobie dychnąć od kompa.
Lonas
Fakt

  1. <?php
  2. $sql = mysql_query("Select * FROM tablica");
  3.  
  4. while($dane = mysql_fetch_array($sql)){
  5. echo "<input type="text" name="id[]" value="$dane['id']" />";
  6. echo "<input type="text" name="link[]" value="$dane['link']" /> <br>";
  7. }
  8. ?>


I teraz dane odbierasz w petli

  1. <?php
  2. for($i=1; $i < count($_POST['id']); $i++)
  3.  //i tutaj update
  4. ?>
xajart
Dzięki właśnie o to mi chodziło, nawet nie wiedziałem że w taki sposób można zapisać tablice w name biggrin.gif
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.