Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Formularz dzialajacy na localhoscie, a na serwerze juz nie
Forum PHP.pl > Forum > Przedszkole
ImagesWink
Witam.
Posiadam hosting obrazkow, na którym postanowilem dodac opcje opisywania plików. Metoda prób i błędów udało mi się wreszcie zrobić wszystko tak jakbym chciał, przetestowałem (na localhoscie) i działa aż miło. Jednak nieprzyjemna niespodzianka jednak spotkała mnie gdy wrzuciłem pliki na serwer - formularz w momencie edycji opisu nie robi po prostu nic.
Nie mam już siły do tego i postanowiłem zgłosić się do specjalistów.


Tutaj można zobaczyć jak działa to na localhoscie: http://imageswink.com/~pliki/description.zip

A tutaj można zobaczyć jak to nie działa:
http://imageswink.com/login.php
login: test
pass: 123456

Zakładka My photos i tam jest opcja edycji opisu, która nie chce mi działać (po kliknieciu "Save" nic się nie dzieje).

Serwer jakiego używam na dysku to Webserv, w takiej wersji:


A oto kod formularza, który użyłem:
  1. <?php
  2. require_once("inc/config.php");  
  3.  
  4. $idx = $_GET['idx'];
  5. $op = mysql_query("select * from images where idx='$idx'");
  6. while ($row = mysql_fetch_object($op))
  7. {
  8.    $opis = $row->description;
  9. }
  10.  
  11.  
  12. if($tekst) {
  13.    
  14.    $ins = @mysql_query("UPDATE `images` SET `description`='$tekst' WHERE `idx`='$idx'");
  15.    
  16.    if($ins) print "<font color='#00ff00'><b>Description changed</font></b>";
  17.    else print "<font color='red'>Error - No changes</font>";
  18.    
  19. }
  20. $tekst = $_POST['tekst'];
  21.  
  22. print "<center><link href='style.css' rel='stylesheet' type='text/css' />
  23. <form action='edit_desc.php?idx=$idx' method='post'>
  24. <br><font color='#FFFFFF'>Edit description</font> <font color='#ff1212'>(max 2048 letters, html is not allowed)</font>:<br />
  25. <textarea name='tekst' cols='40' rows='10'>$opis</textarea><br>
  26. <br><input type='submit' value='Save' />  <input type='button' onclick='window.close()' value='Close' />
  27. </form></center>"
  28. ?>


Czy ktoś ma jakieś pomysły co może być tutaj źłe, że na jednym serwerze działa a na drugim nie? Tzn jaka może być użyta funkcja/intrukcja, która nie chce działać na jednym z serwerów. Jak ktoś będzie potrzebował to wrzucę phpinfo().


I jeszcze druga sprawa:
Jak mogę zablokowac HTML w tym polu? Teoretycznie nie można używać html (bo sobie tak napisałem), ale naprawde gdy zostanie wprowadzony kod to przy wyswietlaniu obrazka, html działa bez zarzutów - a ma nie działac smile.gif


Z góry dziękuję za pomoc.
Pozdrawiam.
nospor
chodzi o register globals. Do danych z forma masz sie odwolywac $_POST['tekst'] a nie $tekst.
Ty to robisz polowicznie, bo niby masz:
$tekst = $_POST['tekst'];
ino maly szczegol. zanim to zrobisz to masz wczesniej:
if($tekst)
no a wczesniej przeciez nie ma $tekst winksmiley.jpg
ImagesWink
Ale szybka pomoc smile.gif A myślałem, że będę musiał czekać dłużej smile.gif
register_globals włączone i działa, formularz też poprawiłem.
Dzięki wielkie, punkt przyznany smile.gif
nospor
Cytat
register_globals włączone
Wyłącz natychmiast. register_globals to najwieksze zlo tego swiata (no, moze troche przesadzam z calym swiatem). Tak czy siak wyłącz i nie korzystaj nigdy z tego. Do danych masz sie odwolywac tak jak pisalem
kkuba
Cytat
I jeszcze druga sprawa:
Jak mogę zablokowac HTML w tym polu? Teoretycznie nie można używać html (bo sobie tak napisałem), ale naprawde gdy zostanie wprowadzony kod to przy wyswietlaniu obrazka, html działa bez zarzutów - a ma nie działac


http://pl.php.net/htmlspecialchars
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.