Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [HTML][MySQL][PHP]Edytowanie rekordów, Jak pobrać dane z tabeli z poprzedniej strony i pobrać je w formularzu
-Edycja rekordów-
post
Post #1





Goście







Mam problem z poprawką błędów skryptu edycji danego rekordu. Mianowicie nie przesyła mi niezbędnych danych na koleją stronę, które to były by wyświetlane, zaraz obok znajdują się inputy do wpisywania. Strona pierwsza posiada w sobie listę rekordów,po wybraniu buttonu przechodzi do kolejnej strony z formularzem.
Strona druga to formularz który ma za zadanie edytować jednocześnie wyświetlając rekord bez zmian. Niestety tak namieszałem że samemu nie wiem co zrobiłem źle.Chce skupić się na poprawnym pobieraniu danych oraz poprawnie sformułowaniu pytania do bazy.


STRONA PIERWSZA http://pics.tinypic.pl/i/00272/fyzfdlhao206.jpg
  1. <?php
  2. ob_start(); error_reporting(E_ALL ^ E_NOTICE);
  3. include 'db.php'; // połączenie się z bazą danych
  4. $link = mysql_connect("localhost", "x", "x")or die("Could not connect");
  5. $mysql_baza = 'szpital';
  6. // połączenie ze schematem bazy danych
  7. mysql_select_db($mysql_baza) or die('Błąd: nie udało się wybrać schematu bazy danych.');
  8.  
  9. $pobierz = "SELECT * FROM lek"; //pobieranie danych
  10. $wynik = mysql_query($pobierz) or die("Złe zapytanie");
  11. { //wyświetlenie nazw kolumn
  12. echo '<tr >
  13. <td width="130px" height="10px"><b>ID Leku</b></td>
  14. <td width="130px" height="10px"><b>Nazwa leku</b></td>
  15. <td width="130px" height="10px"><b>Producent leku</b></td>
  16. <td width="130px" height="10px"><b>Cena leku</b></td>
  17. <td width="130px" height="10px"><b>Kupujacy</b></td>
  18. <td width="130px" height="10px"><b>Edytuj lek:</b></td>
  19. </tr>';
  20. // pobieranie z bazy danych
  21. while ($row = mysql_fetch_array($wynik)) {
  22. echo "<tr>";
  23. echo "<td>$row[ID_lek]</td>";
  24. echo "<td>$row[Nazwa_lek]</td>";
  25. echo "<td>$row[Producent_lek]</td>";
  26. echo "<td>$row[Cena_lek]</td>";
  27. echo "<td>$row[Kupujacy_lek]</td>";
  28. echo "<td>
  29. <form action='edytuj.php' method='get'name='edit'>
  30. <input type='submit' name='pedit' value='".$row['ID_lek']."'/>
  31. </form>
  32. <td> "; //pobiera ID z tabeli do i przenieś do fomularza
  33. }
  34. }
  35. mysql_close($link);
  36. ?>
  37. <?php
  38. $link = mysql_connect('localhost', 'x', 'x')or die(mysql_error());
  39. mysql_select_db('szpital',$link)or die(mysql_error());
  40. // Wysyłanie danych
  41. if (isset($_GET[pedit])) {
  42. $_GET[ID_lek];
  43. $_GET[kup];
  44. $_POST[Nazwa_lek];
  45. $_POST[Producent_lek];
  46. $_POST[Cena_lek];
  47. $_POST[Kupujacy_lek];
  48. //przenoszenie danych do formularza
  49. header("location: edytuj1.php");
  50. exit();
  51. }
  52. ?>


STRONA DRUGA http://pics.tinypic.pl/i/00272/say62e7hadtk.jpg

SKRYPT OBSŁUGUJĄCY
  1. <?php
  2. ob_start(); error_reporting(E_ALL ^ E_NOTICE);
  3. include 'db.php'; // połączenie się z bazą danych
  4.  
  5. // Edycja leku
  6.  
  7. if (isset($_GET['pedit'])) {
  8. include 'db.php';
  9. $link = mysql_connect('localhost', 'x', 'x')or die(mysql_error());
  10. mysql_select_db('szpital',$link)or die(mysql_error());
  11.  
  12.  
  13. // update do tabeli filmy
  14. //jeśli są
  15. if (isset($_GET['id']) && isset($_POST['nazwa']) && isset($_POST['producent']) && isset($_POST['cena']) && isset($_POST['kup'])) {
  16.  
  17. $tabela = 'lek';
  18. if($_GET['id']==TRUE){
  19. mysql_query("UPDATE $tabela SET ID_lek='$_GET[id]' WHERE ID_lek='$_GET[ID_lek]'");}
  20.  
  21. if($_POST['nazwa']==TRUE){
  22. mysql_query("UPDATE $tabela SET Nazwa_lek='$_POST[nazwa]' WHERE ID_lek='$_GET[ID_lek]'");}
  23.  
  24. if($_POST['producent']==TRUE){
  25. mysql_query("UPDATE $tabela SET Producent_lek='$_POST[gatunek]' WHERE ID_lek='$_GET[ID_lek]'");}
  26.  
  27. if($_POST['cena']==TRUE){
  28. mysql_query("UPDATE $tabela SET Cena_lek='$_POST[prod]' WHERE ID_lek='$_GET[ID_lek]'");}
  29.  
  30. if($_POST['kup']==TRUE){
  31. mysql_query("UPDATE $tabela SET Kupujacy_lek='$_POST[kup]' WHERE ID_lek='$_GET[ID_lek]'");}
  32.  
  33. }
  34. if(isset($_GET['pedit'])){
  35. $lek = $_GET['pedit'];}
  36. else { $lek = $_POST['ID_lek']; }
  37. $tabela = 'lek';
  38. $wynik=mysql_query("SELECT FROM $tabela WHERE ID_lek='$lek' ");
  39. while($film=mysql_fetch_array($wynik))
  40. {
  41. $id = (int)$_GET['id'];
  42. $nazwa = $_POST['nazwa'];
  43. $producent = $_POST['producent'];
  44. $cena = $_POST['cena'];
  45. $kup = $_POST['kup'];
  46. mysql_close($polaczenie);
  47. }
  48. }
  49. ?>


FORMULARZ
  1. <table border="0" rules="rows" style="border:5px #38b7c6 solid; width:800px; ">
  2. <form action="edytuj.php" method="post">
  3. <tr><td>ID leku:<?php echo $id; ?></td><td><input type="hidden" name="id" /></td></tr>
  4. <tr><td>Nazwa leku:<?php echo $nazwa; ?> .$nazwa</td><td><input type="text" name="nazwa" /></td></tr>
  5. <tr><td>Producent leku: <?php echo $producent; ?></td><td><input type="text" name="producent" /></td></tr>
  6. <tr><td>Cena leku:<?php echo $cena; ?></td><td><input type="text" name="cena" /></td></tr>
  7. <tr><td>Kupujący:<?php echo $kup; ?></td><td><input type="text" name="kup" /></td></tr>
  8. </table>
  9. <tr><input type="submit" value="Tak, Edytuj" /></tr>
  10. <tr><a href="baza.php">Nie powróc</a></tr>
  11. </form>
  12. </table>


[MYSQL] pobierz, plaintext
  1.  
  2. -
  3.  
  4. --
  5. -- Struktura tabeli dla tabeli `lek`
  6.  
  7. --
  8.  
  9. (
  10.  
  11.  
  12.  
  13.  
  14.  
  15. )
  16.  
  17.  
  18.  
  19.  
  20. --
  21. -- Zrzut danych tabeli `lek`
  22. --
  23.  
  24.  
  25. 51&q=INSERT&lr=lang_en">INSERT 51&q=INTO&lr=lang_en">INTO `lek` (`ID_lek`, `Nazwa_lek`, `Producent_lek`, `Cena_lek`, `Kupujacy_lek`) 51&q=VALUES&lr=lang_en">VALUES
  26.  
  27. (1, 'MAGNEZ+B6 OPTIMAL', 'POLHARMA', 20.49, 'x'),
  28.  
  29. (2, 'Bodymax', 'ALEXUS', 5.46, 'x'),
  30.  
  31. (3, 'Metafen', 'POLHARMA', 50.55, 'x'),
  32.  
  33. (4, 'POLIPYRYNA', 'FAMOLOGIA', 34.30, 'x'),
  34.  
  35. (5, 'GRYPEX', 'POLHARMA SA', 24.80, 'x'),
  36.  
  37. (6, 'Pol', 'Aflapharma SA', 20.50, 'x'),
  38.  
  39. (7, 'Pol', 'pol', 20.50, 'x'),
  40.  
  41. (8, 'Pol', 'LEK', 20.60, 'x'),
  42.  
  43. (9, 'Pol', 'Aflapharma SA', 20.50, 'x');
  44.  
[MYSQL] pobierz, plaintext
Go to the top of the page
+Quote Post

Posty w temacie
- Edycja rekordów   [HTML][MySQL][PHP]Edytowanie rekordów   30.01.2013, 17:31:30
- - djgarsi   W formularzu zmienną daj w input -> value, np: ...   30.01.2013, 20:46:19
- - Edycja rekordów   W sumie tak, lecz początkowo tego nie planowałem. ...   31.01.2013, 16:20:55
- - Edycja rekordów   Skrypt po wybraniu danego elementu:http://files.ti...   31.01.2013, 19:00:26


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 23.08.2025 - 19:21