Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP][MYSQL] Edycja newsów
Forum PHP.pl > Forum > Przedszkole
heit
Witam, mam takie funkcje:
  1. <?php
  2. function edit_news(){
  3.  
  4.    if ($_GET['action']=='edit') {
  5.  
  6.               $id = $_GET['id'];
  7.               $link = mysql_query("SELECT * FROM news WHERE id='$id'");
  8.               $row = mysql_fetch_array($link);
  9.  
  10.               echo 'Edytuj&nbsp: <br/><br/>
  11.              
  12.               <form method="POST" action="news.php">
  13.                   <table border="0" width="100%">
  14.                       <tr>
  15.                           <td>Titl:</td>
  16.                           <td><input type="text" name="title" size="64" value="'.$row['title'].'" /></td>
  17.                       </tr>
  18.  
  19.                       <tr>
  20.                           <td>Tex: </td>
  21.                           <td><textarea rows="5" name="text" cols="42">'.$row['text'].'</textarea></td>
  22.                       </tr>
  23.                         <tr>
  24.                           <td>Im: </td>
  25.                           <td><input type="text" name="img" size="64" value="'.$row['img'].'" /></td>
  26.                       </tr>
  27.                        <tr>
  28.                           <td>Author: </td>
  29.                           <td><input type="text" name="author" size="64" value="'.$row['author'].'" /></td>
  30.                       </tr>
  31.                       <tr>
  32.                           <td> </td>
  33.                           <td><input type="submit" value="Edytuj" name="save"></td>
  34.                       </tr>
  35.                   </table>
  36.               </form>';
  37.            }
  38. }
  39.  
  40. // Save edit news //
  41. function save_news(){
  42. if(isset($_POST['save']))
  43. {
  44.  
  45.    $id = $_POST['id'];
  46.    $title = $_POST['title'];
  47.    $category = $_POST['category'];
  48.    $img = $_POST['img'];
  49.    $text = $_POST['text'];
  50.    $author = $_POST['author'];
  51.    $save = $_POST['save'];
  52.  
  53.        $savenews = "UPDATE news SET title = '$title', category = '$category', img = '$img', text = '$text', author = '$author' WHERE id='$id'";
  54.        $wykonaj = mysql_query ($savenews) or die(mysql_error());
  55.  
  56.  
  57. }
  58. return;
  59. }
  60. ?>

Wszystkie dane ładnie wczytuje do formularza edycji, lecz jest problem, gdy chcę zachować zmiany, strona przeładowuje się i nic się nie zmienia. Kiedy wyrzucę z tego zapytania:
  1. $savenews = "UPDATE news SET title = '$title', category = '$category', img = '$img', text = '$text', author = '$author' WHERE id='$id'";

WHERE id='$id' wtedy wszystko działa, jednakże zmiany zachodzą we wszystkich newsach. Może ktoś jest mi w stanie pomóc ? Chętnie wysłucham także propozycji co do poprawy działania tych funkcji.
Za wszystko z góry dzięki.
melkorm
  1. <?php
  2. $id = $_POST['id'];
  3. ?>


id masz w tablicy $_GET

ale nie pobieraj id z get'a daj w kodzie HTML:

  1. <input type="hidden" value="'.$id.'" name="id">


I bez mzieniania tego wyżej powinno smigać ;]
heit
Dzięki mistrzu, działa.
Jest jeszcze taki malutki, jeśli to tak można nazwać - problem, mianowicie gdy kliknę 'Edytuj' przenosi mnie news.php ( tak jak powinno być ), jednakże rekordy nie są zaktualizowane, dopiero po ponownym odświeżeniu zachodzą zmiany.
Pozdrawiam.
melkorm
możliwe że w złej kolejności wykonujesz funkcje udpate'u newsa, niestety mało moge powiedzieć bez kodu ;]
heit
Dzięki.. wielki plus dla Ciebie, wystarczyło zamienić funkcje miejscami i wszystko śmiga jak należy.
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.