Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [php] Shoutbox
Forum PHP.pl > Forum > Przedszkole
Raffal
tworze shoutboxa i mam pewne problemy wydaje mi sie ze sa one dosyc podstawowe lecz nie moge tego zajazyc
tzn isset nie dziala

  1. <form action="" method="POST">
  2. nick:<br>
  3. <input type="text" name="nick" value="" size="10"><br>
  4. <br>
  5. <textarea name="tresc" cols="15 rows="1">tresc</textarea><br>
  6. <input type="submit" NAME="news" value="Wyslij">
  7. </form>
  8.  
  9. <?php
  10.  
  11. $b=$_POST['nick'];
  12. $c=$_POST['tresc'];
  13. $d=date("d-h-y);
  14.  
  15. include "php/param.php";
  16.  
  17. if(isset($_POST['tresc'])){
  18.  
  19. $pytanie="insert into shout(nick,data,tresc) values('$b','$d','$c');";
  20. $id=mysql_query($pytanie) or die("nie dziala"); 
  21. echo 'twoj shout zostal dodany';
  22.  
  23. }
  24. else 
  25. echo 'wpisz nazwe uzytkownika';
  26. mysql_close();
  27. ?>


no i mam jeszcze pytanie tzn jezeli chcialbym dodac button na stronie ktory odswierzalby tylko shoutboxa to
jak to zrobic ?
nospor
w jakim sensie ci nie dziala? Rozwin prosze mysl.

Cytat
button na stronie ktory odswierzalby tylko shoutboxa to
jak to zrobic ?
uzyc ajaxa

ps: po co piszesz kolejnego shouta? Tyle juz jest gotowych smile.gif
Raffal
...bo jestem ambitny smile.gif

nie dziala tzn dodaje mi nowe shouty z takim samymi danymi tzn nie dziala mi isset
nospor
Cytat
nie dziala tzn dodaje mi nowe shouty z takim samymi danymi tzn nie dziala mi isset
Ales mi wyjasnil... tongue.gif
Wiesz co robi isset()? Sprawdza czy jest ustawiony index/zmienna. Jesli wysylasz forma w takiej postaci co u ciebie, to zawsze isset($_POST['tresc']) zwroci ci true, czyli warunek bedzie spelniony.

A najlepszy jest ten else:
else
echo 'wpisz nazwe uzytkownika';

Sprawdzasz "tresc" ale w else walisz ze z uzytkownikiem cos nie tak smile.gif
Raffal
no bo to ma byc tak

jezeli $a istnieje wtedy ja dodaj ale jezeli nie to jej nie dodawaj

a z tym else to sprawdzalem tylko jaka zwraca mi wartosc i zawsze zwraca ze jest TRUE


aha i mam jeszcze pytanie potrzebuje dobry system newsow z komentarzami oraz system logowania (gotowe) znasz jakies namiary najlepiej opisane po polsku?
nospor
Cytat
i zawsze zwraca ze jest TRUE
No to ci to wlasnie chyba wyjasnilem post wyzej.

Jak chcesz sprawdzac czy ktos cos wpisal to uzyj empty()
Raffal
hmmm A POMOZE przeniesienie formularza pod kod php?

-----------------

aha i mam jeszcze pytanie potrzebuje dobry system newsow z komentarzami oraz system logowania (gotowe) znasz jakies namiary najlepiej opisane po polsku?
lopik
  1. <?php
  2. if(!empty($_POST['nick']) && !empty($_POST['tresc'])) {
  3. // dodaj wpis do bazy...
  4. }
  5. ?>


PS. Cóż za zbieg okoliczności, wczoraj właśnie zrobiłem shoutboxa-mini winksmiley.jpg
Raffal
no dzieki ale ja robilem juz kiedys cos takiego i bez tego empety ;/ i DZAIAŁAŁO
nospor
Cytat
no dzieki ale ja robilem juz kiedys cos takiego i bez tego empety ;/ i DZAIAŁAŁO
musiales robic inaczej. W tym przypadku bedzie jak mowilem: jesli wysylasz postem pole, to nie wazne czy je wypelnisz czy nie, isset() zwroci ci true. Przyjmij to do wiadomości

Cytat
hmmm A POMOZE przeniesienie formularza pod kod php?
to bez znaczenia. efekt bedzie taki sam
tommy4
  1. <?php
  2. $d=date("d-h-y);
  3. ?>


tu masz błąd, ma być
  1. <?php
  2. $d=date("d-h-y");
  3. ?>
nospor
@tommy4 przeciez to literowka, ktora popelniono pisząc ten temat...
Gdyby bylo inaczej to by mu skrypt nie chodzil wogole, a mu skrypt chodzi
lopik
@Raffal, przeczytaj sobie jeszcze to: http://php.faq.pl/klucz/isset_empty
yaotzin
no i chyba powinno się sprawdzać jedno i drguie isset i empty. isset czy ktoś nie zainicjalizował pustą tablicą lub zmienna a empty czy zmienna nie jest pusta czy coś takiego. Czytałem o tym w jakiejś książce teraz nie mogę sobie przypomniec której
Raffal
kurcze nie moge sobie poradzic z tym wie ze kiedys robilem system newsow i zrobilem to bez empety i dzialalo bardzo dobrze a teraz cos po dłuzszej przerwie z php(matura:P) nie moge sobie dac rady moge prosic o jakas wskazowke wiecej?
lopik
No możesz sobie skrypt zrobić w nowym pliku, i w formularzu w atrybucie action=".. podać nazwę tego pliku.

A tym nowym pliku, od razu tworzysz zapytanie które doda wpis do bazy.
Ale takie rozwiązanie jest bardzo niebezpieczne, nie zalecane itd. nie ma żadnych plusów. ;p
Kicok
Cytat
no i chyba powinno się sprawdzać jedno i drguie isset i empty. isset czy ktoś nie zainicjalizował pustą tablicą lub zmienna a empty czy zmienna nie jest pusta czy coś takiego. Czytałem o tym w jakiejś książce teraz nie mogę sobie przypomniec której


Wystarczy empty(). Jeśli zmienna nie została zdefiniowana to również zwróci true i nie wywali żadnego E_NOTICE
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.