Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [PHP]Edycja rekordów
wiktor1984
post 15.06.2014, 14:04:15
Post #1





Grupa: Zarejestrowani
Postów: 45
Pomógł: 0
Dołączył: 29.05.2014

Ostrzeżenie: (0%)
-----


  1. <?php
  2. $wynik = mysql_query("SELECT * FROM category")
  3. or die('Błąd zapytania');
  4.  
  5. if(mysql_num_rows($wynik) > 0){
  6.  
  7.  
  8. while($r = mysql_fetch_assoc($wynik)) {
  9.  
  10. echo $r['id'];
  11. echo $r['name'];
  12. echo '<input type="text" name="XXX" VALUE="XXX" class="text" ><input type="submit" name="XXX" value="Edit">';
  13. echo '<br><br>';
  14.  
  15. }
  16.  
  17. }
  18. else {
  19. echo"Brak Kategori";
  20. }
  21.  
  22. ?>
  23.  
  24.  
  25.  
  26. <?php
  27. if ( isset($_POST['submit']) )
  28. {
  29. $query = "UPDATE category SET name='$_POST[XXX]' WHERE id ='XXX'";
  30. $result = @mysql_query ($query);
  31.  
  32. }
  33. ?>


Próbuje napisać edycje kategorii niech ktoś napisze czy dobrze kombinuje?
jak umieścić zmienną $r['name'] tu VALUE="XXX" ze względu na podwójne użycie ' wywala mi błąd można to jakoś inaczej zapisać?

Przy pojedyńczej edycji rekordu wszystko działa jak należy:

  1. <form action="index.php" method="post">
  2. <input type="text" name="title" VALUE="<?php echo"$title";?>" class="text">
  3. <input type="submit" name="submitconf" value="Zapisz">
  4. </form>
  5.  
  6.  
  7. $query = "UPDATE config SET title='$_POST[title]' WHERE id ='1'";
  8. $result = @mysql_query ($query);
  9.  




Go to the top of the page
+Quote Post
jahonen
post 15.06.2014, 14:28:30
Post #2





Grupa: Zarejestrowani
Postów: 26
Pomógł: 0
Dołączył: 21.04.2014

Ostrzeżenie: (0%)
-----


Dobrze kobinujesz. $r['name'] wstaw jako zmienną sesji
Go to the top of the page
+Quote Post
wiktor1984
post 15.06.2014, 16:49:55
Post #3





Grupa: Zarejestrowani
Postów: 45
Pomógł: 0
Dołączył: 29.05.2014

Ostrzeżenie: (0%)
-----


Zrobiłem coś takiego o dziwo działa

  1. if(mysql_num_rows($wynik) > 0){
  2.  
  3.  
  4. while($r = mysql_fetch_assoc($wynik)) {
  5.  
  6. echo $r['id'];
  7. echo $r['name'];
  8.  
  9. $name = $r['name'];
  10. $id = $r['id'];
  11.  
  12. echo '<form action="test.php" method="post"><input type="text" name="';
  13. echo $id;
  14. echo '" VALUE="';
  15. echo $name;
  16. echo '" class="text" ><input type="submit" name="$id" value="Edit"></form>';
  17. echo '<br><br>';
  18.  
  19. }
  20.  
  21. }
  22. else {
  23. echo"Brak Kategori";
  24. }


Jednak ten kawałek kodu musi wyglądać tak:
  1. echo '<form action="test.php" method="post"><input type="text" name="';
  2. echo $id;
  3. echo '" VALUE="';
  4. echo $name;
  5. echo '" class="text" ><input type="submit" name="$id" value="Edit"></form>';
  6. echo '<br><br>';

jak zapisze go w ten sposób to nie działa
  1. echo '<form action="test.php" method="post"><input type="text" name="$id" VALUE="$name" class="text" ><input type="submit" name="$id" value="Edit"></form> ';
  2. echo '<br><br>';

Zmienne wyświetlane przez echo muszą być w nowej lini nie wiem dlaczego?


Zapytania do bazy danych zrobiłem na sztywno działa edycja 2 pierwszych kategori nie wiem jak połączyć zmienną $id z zapytaniami?
  1. if ( isset($_POST['1']) ){
  2.  
  3. $query = "UPDATE category SET name='$_POST[1]' WHERE id ='1'";
  4. $result = @mysql_query ($query);
  5.  
  6. }
  7.  
  8. if ( isset($_POST['2']) ){
  9.  
  10. $query = "UPDATE category SET name='$_POST[2]' WHERE id ='2'";
  11. $result = @mysql_query ($query);
  12.  
  13. }


Mógłby ktoś wytłumaczyć o co chodzi z tymi zmiennymi sesji czytam i nie moge załapać o co chodzi?
Go to the top of the page
+Quote Post

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

 



RSS Wersja Lo-Fi Aktualny czas: 31.07.2025 - 10:32