Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [php/sql]
Forum PHP.pl > Forum > Przedszkole
wojtekwro
Witam,
mam taki mały problem, stworzyłem panel admina, do obsługi treści podstron z wykorzystaniem tinymce itp pierdół ;] Problem mój polega na tym, że gdy klikne edit powinien się wykonać zapis do bazy. Wszystko jest uwarunkowane wieloma zmiennymi zawartymi w samym pliku z formularzem. Chciałbym aby zapis do bazy nie odbywał się na zewnętrznym pliku, a był wykonywany wewnątrz pliku z formularzem.

  1. <body>
  2. <div id="wrapper">
  3. <div id="A">
  4. <a href="index.php?lang=gb" onmouseover="window.status=''; return true;"><img src="images/gb.gif" width="*" height="50%" alt="angielski" border="0"/></a>
  5. <a href="index.php?lang=de" onmouseover="window.status=''; return true;"><img src="images/de.gif" width="*" height="50%" alt="niemiecki" border="0"/></a>
  6. <a href="index.php?lang=pl" onmouseover="window.status=''; return true;"><img src="images/pl.gif" width="*" height="50%" alt="polski" border="0"/></a>
  7. <a href="index.php?lang=it" onmouseover="window.status=''; return true;"><img src="images/it.gif" width="*" height="50%" alt="włoski" border="0"/></a>
  8. </div>
  9. <div class="mlmenu horizontal bluewhite fade pmenu">
  10. <?php include ("menu/".$_SESSION['lang'].".html"); ?>
  11. </div>
  12. <?php 
  13. $go = $_GET['go'];
  14. $ide = $_SESSION['lang'];
  15.  
  16. $ide = $_SESSION['lang'];
  17. $uchwyt=mysql_connect('localhost','root','')
  18. or die('Nieudane połączenie z bazą danych...');
  19. mysql_select_db('mlmenu')
  20. or die('Nie udało się wybrać bazy danych...'); 
  21. $query = mysql_query("select * from $go where lang = '$ide'");
  22. while($rekord = mysql_fetch_array($query))
  23. {
  24.  
  25. echo '<b>EDYTUJ TREŚĆ PODSTRONY</b><br>';
  26. echo '<form method="POST" action="index.php?'.$go.'='.$ide.'">
  27.  <table border="0" width="100%">
  28.  <tr>
  29.  <td><textarea name="text" cols="119" rows="45">'.$rekord[2].'</textarea></td>
  30.  </tr>
  31.  
  32.  <tr>
  33.  <td> </td>
  34.  <td><input type="submit" value="EDYTUJ"></td>
  35.  </tr>
  36.  </table>
  37.  </form>';
  38.  }
  39.  
  40.  $text=$_POST['text'];
  41.  
  42. if (isset($_POST['$go']) && $_POST['$ide']=='wyedytuj')
  43.  
  44. mysql_query("UPDATE $go SET text='$text', WHERE lang='$ide'");
  45.  
  46. ?>
  47. </div>
  48. </body>
  49. </html>


powyżej zamieściłem kod gdzie próbowałem tego dokonać, po kilku godzinach prób zwracam się do was o pomoc. Problem polega na tym, że po wysłaniu edytowanej strony nie jest wykonywany zapis, a sypie mi błąd z tą linią w roli głównej :

  1. <?php
  2. while($rekord = mysql_fetch_array($query))
  3. ?>
nospor
  1. <?php
  2. if (isset($_POST['$go']) && $_POST['$ide']=='wyedytuj')
  3. ?>

chyba chciales napisac tak:
  1. <?php
  2. if (isset($_POST[$go]) && $_POST[$ide]=='wyedytuj')
  3. ?>

Na grzyba te ciapki? Na dodatek one nie parsuja zmiennych. Co innego podwojne " "
wojtekwro
to nie w tym problem, te uszy ciapki to już był akt desperacji ;]

chodzi mi o sensowne połączenie tego ;]



  1. <?php
  2. echo '<form method="POST" action="index.php?'.$go.'='.$ide.'">
  3.  
  4. .
  5. .
  6. .
  7. .
  8. if (isset($_POST[$go]) && $_POST[$ide]=='wyedytuj')
  9. mysql_query("UPDATE $go SET text='$text', WHERE lang='$ide");
  10. ?>
nospor
No przeciez przekazujesz to getem a nie postem.
pozatym $ide to nie nazwa pola a wartosc.
  1. <?php
  2. if (isset($_GET[$go]) && $_GET[$go]==$ide)
  3. //....
  4. ?>
wojtekwro
nie wiem,
nic mi w tym temacie nie wychodzi walcze dalej ;]
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.