Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP][MYSQL] proszę o podpowiedź jakie zapytanie ?
Forum PHP.pl > Forum > Przedszkole
limonides
  1. if ($_GET['menu'] == 'edytuj') {
  2. $query=" SELECT * FROM zawodnik";
  3. $result=mysql_query($query);
  4. $num=mysql_numrows($result);
  5.  
  6. $i=0;
  7. while ($i < $num) {
  8. $imie=mysql_result($result,$i,"imie");
  9. $nazwisko=mysql_result($result,$i,"nazwisko");
  10. $id=mysql_result($result,$i,"id");
  11. echo "$imie";
  12. echo "$nazwisko";
  13. echo "<a href=\"admin.php?menu=edytuj&id={$id}\"> edytuj </a> <br />";
  14. ++$i;
  15. }
  16. }


się trochę zapętliłem ;] wyświetlam dane i link do edycji. jakie mam dać zapytanie aby po kliknięciu w "edytuj" było wiadomo jaki rekord [id] będę edytował i wyświetliły mi się żadane rekordy w formularzu questionmark.gif

proszę o podpowiedź pozdrawiam
Zosiek
  1. echo "<a href=\"admin.php?menu=edytuj&id={$id}\"> edytuj id=".$id." </a> <br />"; //wyświetli np. edytuj id=9
  2.  
  3. if (isset($_GET['id'])){
  4. echo '<form method="POST" name="admin" action="admin.php">'
  5. .'<p><input type="text" value="'.$id.'" name="id" size="22" />'
  6. .'<p><input type="text" value="'.$imie.'" name="imie" size="22" />' .'<p><input type="text" value="'.$nazwisko.'" name="nazwisko" size="22" />'
  7. .'  <input type="submit" value="Zapisz"/></p>'
  8. .'</form>';
  9. }
  10. if (isset($_POST['id']){
  11. //połączenie z bazą
  12. $ins = @mysql_query("UPDATE nazwa_tabeli SET imie='".$_POST['imie'].", nazwisko='".$_POST['nazwisko']." ' WHERE id=".$_POST['id']."");
  13. }
  14.  

Pamiętaj o zakończeniu połączenia z bazą.
Pisane na szybko, może zawierać błędy. Pamiętaj o weryfikacji danych, które otrzymujesz. Możesz dodać inne warunki zabezpieczające.
limonides
nie wywaliło mi błędu ;] działa ładnie tylko nie dokładnie o taki efekt mi chodziło.

tutaj jak wcisnę edytuj to każdy rekord pokolei jeden pod drugim wyswietla się do edycji.

mi chodzi o to że jak kliknę w EDYTUJ trzeciego rekordu z listy to pojawi mi się do edycji w formularzu tylko imię i nazwisko tego 3 rekordu.

pozdrawiam
Zosiek
Jeżeli dobrze zrozumiałem to masz listę rekordów ( w postaci rozwijanej) i jak wybierzesz rekord id 3 to ci się ten formularz wyświetla??

Czy że masz wyświetlone imię, nazwisko przy każdym rekordzie i po kliknięciu edytuj wyświetla się nowe okno z formularzem edycji??
limonides
mam listę taką o:

jaruś kaczyński | edytuj
oluś kwachu | edytuj
donald tusk | edytuj

no i jak nacisnę edytuj chcę aby lista ta mi zniknęła i w jej miejsce pojawił się rekord do edycji :-)



hmhm tak w międzyczasie nie wiem czy humanitarnie wypłodziłem cuś takiego. efekt jest taki jaki zamierzałem, ale jako iż jestem żółtodziób w tych sprawach to jeśli popełniłem jakieś karygodne błędy będę wdzięczy za korektę.

  1. <?php
  2. if ($_GET['menu'] == 'edytuj') {
  3. $query=" SELECT * FROM zawodnik";
  4. $result=mysql_query($query);
  5. $num=mysql_numrows($result);
  6.  
  7. $i=0;
  8. while ($i < $num) {
  9. $imie=mysql_result($result,$i,"imie");
  10. $nazwisko=mysql_result($result,$i,"nazwisko");
  11. $id=mysql_result($result,$i,"id");
  12. echo "$imie";
  13. echo "$nazwisko";
  14. echo "<a href=\"admin.php?menu=edzawodnik&id={$id}\"> edytuj </a> <br />";
  15. ++$i;
  16. }
  17. }
  18. $numer = $_GET['id'];
  19. if ($_GET['menu'] == 'edzawodnik'){
  20. $query=" SELECT * FROM zawodnik where id=$numer";
  21. $result=mysql_query($query);
  22. $row = mysql_fetch_array($result);
  23. ?>
  24. <form action="udzawodnik.php" method="post">
  25. <input type="text" name="ud_id" value="<?php echo $row[id]; ?>">
  26. <input type="text" name="ud_imie" value="<?php echo $row[imie]; ?>">
  27. <input type="text" name="ud_nazwisko" value="<?php echo $row[nazwisko]; ?>">
  28. <input type="Submit" value="Aktualizuj">
  29. </form>
Zosiek
Dziwne, że nie wywala błędu, bo nie zakończyłeś waruneku if.
  1. $numer = $_GET['id'];
  2. if ($_GET['menu'] == 'edzawodnik'){ //brakuje zakończenia
  3. $query=" SELECT * FROM zawodnik where id=$numer";
  4. $result=mysql_query($query);
  5. $row = mysql_fetch_array($result);
  6. ?>
  7. <form action="udzawodnik.php" method="post">
  8. <input type="text" name="ud_id" value="<?php echo $row[id]; ?>">
  9. <input type="text" name="ud_imie" value="<?php echo $row[imie]; ?>">
  10. <input type="text" name="ud_nazwisko" value="<?php echo $row[nazwisko]; ?>">
  11. <input type="Submit" value="Aktualizuj">
  12. </form>
  13.  

I jeżeli mam być szczery to ten formularz będzie zawsze wyświetlany bo jest poza warunkiem biggrin.gif powinno być tak:
  1. <?php
  2. if ($_GET['menu'] == 'edytuj') {
  3. $query=" SELECT * FROM zawodnik";
  4. $result=mysql_query($query);
  5. $num=mysql_numrows($result);
  6.  
  7. $i=0;
  8. while ($i < $num) {
  9. $imie=mysql_result($result,$i,"imie");
  10. $nazwisko=mysql_result($result,$i,"nazwisko");
  11. $id=mysql_result($result,$i,"id");
  12. echo "$imie";
  13. echo "$nazwisko";
  14. echo "<a href=\"admin.php?menu=edzawodnik&id=$id\"> edytuj </a> <br />";
  15. ++$i;
  16. }
  17. }
  18. if ($_GET['menu'] == 'edzawodnik'){
  19. $query=" SELECT * FROM zawodnik where id=".$_GET['id']."";
  20. $result=mysql_query($query);
  21. $row = mysql_fetch_array($result);
  22.  
  23.  
  24. echo '<form method="POST" action="udzawodnik.php">'
  25. .'<p><input type="text" value="'.$row[id].'" name="id" size="22" />'
  26. .'<p><input type="text" value="'.$row[imie].'" name="imie" size="22" />'
  27. .'<p><input type="text" value="'.$row[nazwisko].'" name="nazwisko" size="22" />'
  28. .' <input type="submit" value="Zapisz"/></p>'
  29. .'</form>';
  30.  
  31. }
  32. ?>
  33.  

Pozbyłem się zmiennej $Numer bo jest nie potrzebna.
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.