Baksik
8.07.2003, 14:45:41
Cześć wszystkim ;-)
Mam wielki mały problem zainstalowalem apache 1.3.2 i php4.3.2, i jest mały problem serwer odczytuje komendy jak echo , include itd. , ale nie odczyuje komend if , else itd. wyskakuje takie coś ->
Notice: Undefined variable: mail in D:Program FilesApache GroupApachehtdocspoczta.php on line 15
skrypt wyglada tak :
[php:1:b64ffe6476]<?php
$temat = "www.adresstrony.pl"; //temat listu ktory zostanie wysłany do osoby której polecasz tą stronę
$tresc = "Zapraszam na moja www ;-).";
$twoj = "twoj@mail.pl";
if ($mail)
{mail ("$mail", "$temat","$tresc", "RE: $twoj");
echo("Dziekuje za powiadomienie swojego znajowego o stronie");
} else {
echo("
");
}
?>[/php:1:b64ffe6476]
Jest bład skryptu czy blad konfiguracji serwera pomozcie !! co mam robic
__
[
scanner] BBCode !!!!
masz 2 mozłiwości:
pisać [php:1:c78f0b8767]<?php if( isset( $mail ) ) { ... }
?>[/php:1:c78f0b8767]
lub w php.ini zmienić error_reporting, tak by nie wyświeltał uwag (notice)
Baksik
8.07.2003, 20:43:57
wielki dzieki ;-)
wybralem opcje 2 ;-)
e-Gandalf
8.07.2003, 20:46:55
To zle. Wybierz lepiej opcje pierwsza. Znacznie lepiej jest nauczyc sie pisac prawidlowo i oczyscic swoj kod, niz ukrywac bledy.
Baksik
8.07.2003, 20:51:31
a ten kod jest zły?
szczerze mówiąc na serwerach php działa spoko tylko na moim domowym pc chyba jest cos zle skonfiugurowane
-----------------
skrypt
ta cześć jest podobno z błedem ( przynajmniej taki wyskakuje blad na serweir mayne ;-)
if ($mail){
mail ("$mail", "$temat","$tresc", "RE: $twoj");
echo("Dziekuje za powiadomienie swojego znajowego o stronie");
} else {
echo("
");
}
?>[/xml]
e-Gandalf
8.07.2003, 20:55:17
przeciez napisal Ci DayV - zeby sprawdzi czy istnieje zmienna uzywasz funkcji isset(), ktorej argumentem jest oczekiwana zmienna.
Jesli zamiast tego wylaczysz wyswietlanie info o bledzie, blad bedzie nadal wystepowal, tylko Ty nie bedziesz go widzial.. az natrafisz na robote, ktora bedziesz umieszczal na zewnetrznym serwerze, nad ktorym nie masz kontroli i ktory sumienniej pilnuje braku bledow...
Rownie dobrze moglbys wylaczyc kontrole bledow wogule i olewac niedzialajace czesci...
Baksik
8.07.2003, 20:58:42
:oops: :oops:
wielkie dzieki za rady jestem dopiero początkujący :oops:
e-Gandalf - ale byleś brutalny
Baksik - nie przejmuj sie za bardzo. Wyłączanie notice jest popularnym zachowaniem. Sam rónież często tak pracuję, gdyż jeszcze sie nie spotkałem z sytuacją, że notice w rzeczywistości podniósł by bezpieczeństwo mojego skrytpu.
Z drugiej strony dobrych nawyków programistycznych nigdy nie za wiele, więc warto się starać.
ps. jednym z dobrych nawyków jest używanie bbcode
scanner
8.07.2003, 21:21:59
Swoją drogą, za starych dobrych czasów, gdy uczyłem się co to sa programy i algorytmy (ilez to la temu...) obowiązkowym było definiowanie i deklarowanie zmiennych...
Baksik
8.07.2003, 21:24:07
Hm... ja sie nigdy nie poddaje ;-)
fakt faktem długo droga do nauki ;-)
DeyV - masz może jakiś fajny kursik php bo posiadam wiele ale zaden fajny .
Aha jeszcze jedno sorry za problem z moja osoba :oops:
?>[/php]
1. kto pyta - nie błądzi, więc nie sądzę, by z Twoją osobą były jakieś szczególne poblemy
2. manual.... *.chm, of course
3. Scanner - ty chyba jesteś starszy, niż myślałem... A wydawało mi sie, że ludzie tak długo nie żyją
Baksik
8.07.2003, 21:32:53
dzieki ;-)
Nom mam wielką nadzieje ;-) że nie będzie problemu.
narazie ucze sie na niejakim Kompendium Programisy - php
niop ale skorzystam tez z manuala ;-)
do tworze stron w php uzywasz pajaczka , php coder czy cos innego ?
menic
8.07.2003, 21:32:57
Cytat
Aha jeszcze jedno sorry za problem z moja osoba :oops:
Nie przepraszaj bo nie ma zaco
A przeciez każdy na początku miał takie błey i to normalne a poto jest forum, aby na niich pisać
scanner
8.07.2003, 21:33:35
DeyV: widziałeś mnie, jadłeś ze mną, pracowałeś ze mną... Hehehe...
Baksik
8.07.2003, 23:17:42
Dzieki wszystkim którzy mi pomogli wkońcu coś sie dzieje ( wychodzą mi skrypty ;-) ) ale na 100 % będe miał jakieś pyania ;-) dzieki za cierpliwość i jeszcze raz za pomoc ;-)
Baksik
9.07.2003, 21:26:30
czesc all ;-)
to zaś ja chciałem zapytać o php ponownie ;-)
zrobilem formularz, ale nie umiem zrobic zeby formularz zostaly wyslany z wiekszością pól umiem tylko taki :oops:
[php:1:9711cd6409]<?php
if (isset($email) );
mail ("$email", "Polecenie serwisu www.milosc.ab.prv.pl", "$tresc", "RE: @autor");
$autor = "baksik7@poczta.fm";
echo ("<br /> <br /> <br /><center><font size="5"> Dziękujemy za wypełnienie formularza
</font></center><br />");
echo("<center>e-mial został wysłany na adres:</center>");
echo("<center>$email <br /><br /></center>");
echo("<center>O treści: <br /></center>");
echo("<center>$tresc</center>");
?>[/php:1:9711cd6409]
do tego formularz :
Kod
<form method=post action="wyslij.php">
Podaj adres e-mail osoby którą chcesz powiadomić
<br />
<input type=text name="email" class="box"><br>
<textarea name="tresc" rows="15" cols="50" class="box"> </textarea><br />
<input type=submit value=Wyślij>
<input type=reset value=Wyczyść />
a jak zrobic zeby bylo cos takiego wysylane
Kod
<input type="text" name="Jaki dział chętniej odwiedzasz ?" class="box" />
<br /><br/>
Jaki dział byś dodał(a) do strony
<br />
<input type="text" name="Jaki dział byś dodał (a)" class="box"/>
<br /><br />
Uwagi na temat strony
<br />
<textarea class=box name="uwagi..." ROWS="4" COLS="30"></TEXTAREA>
<br />
<input type="submit" value="Wyślij" /><input type="reset" value="Wyczyść" />
zeby poprostu w mailu ktory do mnie przyjdzie byly takie rzeczy jak uwagi , jaki dzial itd.
BO ja umiem tylko ten 1 , ten 2 mi nie wychodzi pomożcie ;-) please :oops:
1. jak generujsze HTML , nie używaj za częśto echo, lepiej zamknąc php
2. do funkcji mail możesz władować tylko 1 smienną z treścią.
Ale nic nie stoi na przeszkodzie, by była to treść złożona z różnych zmiennych, kórre otrzymamy z formularza, na zasadzie
[php:1:8c925ecd14]<?php
$tresc = '';
$tresc .= 'pole 1 = '. $_REQUEST['pole1'];
$tresc .= 'pole 2 = '. $_REQUEST['pole2'];
//itd
?>[/php:1:8c925ecd14]
Baksik
9.07.2003, 21:41:21
dzieki za dobra rade i za ponowną pomoc ;-)
hm... mam pytanko tylko się nie śmiej ;-)
czy stworzenie coś w stylu ogłoszeń bezpłatnych na stronie jest trudne czy nie ? ( oczywiście patrząc na moje umiejętności czyli dopiero co sie ucze ;-) )
oczywiście w php.
aha mialem zapytać jeszcze co do rady - mam nie używać echo to spowalnia uruchamianie strony czy cos innego ? :oops: sorry za lamierskie pytanie ;(
poprzedni post już poprawiłem. Chodziło o to, by nie męczyć sie z drukowaniem skłądni html, bo to zarówno spowalnia, jak i zminiejsza czytelność kodu (musisz dodawać np. przed ")
2. Myślę, że nawet dla osoby początkującej nie będzie to trudne.
W sumie chodzi o:
- przygotowanie formularza
- zapisywanie danych do ... (bazy, plików

)
- wyciaganie ich...
i już proste ogłoszenia działają
Baksik
9.07.2003, 22:13:06
hm... ten skrypt co podales ze zmniennymi , nie wiem czemu mi nie chce dzialac dostaje na maile tylko nick i wiek ale bez podanych w formularzu danych ma to wygladac tak ?
[php:1:07ac647622]<?php
$tresc = '';
$tresc .= 'nick = '. $_REQUEST['wiek'];
$tresc .= 'wiek = '. $_REQUEST['wiek'];
mail ("baksik7@poczta.fm", "Formularz", "$tresc");
?>[/php:1:07ac647622]
przy np:
Kod
<form ACTION="slij.php" enctype="text/plain" METHOD="Post">
Imię lub Nick
<br />
<input type="text" name="nick" class="box" />
<br /><br />
Ile masz lat<br />
<input type="TEXT" name="wiek" class="box" />
<br /><br />
<input type="submit" value="Wyślij" /><input type="reset" value="Wyczyść" />
to narazie się za to nie biore dalej postudiuje manuale ;-)
Cytat
$tresc .= 'nick = '. $_REQUEST['wiek'];
$tresc .= 'wiek = '. $_REQUEST['wiek'];
czy jesteś pewien, że wszystko jest OK?
Baksik
9.07.2003, 22:17:28
Cytat
Cytat
$tresc .= 'nick = '. $_REQUEST['wiek'];
$tresc .= 'wiek = '. $_REQUEST['wiek'];
czy jesteś pewien, że wszystko jest OK?
sorry masz racje pomylilem sie ale nie w php tylko na formum mam tak w php
[php:1:f398581b7b]<?php
$tresc .= 'nick = '. $_REQUEST['nick'];
$tresc .= 'wiek = '. $_REQUEST['wiek'];
?>[/php:1:f398581b7b]
co prawda nie wiem, w czym teraz masz problem, ale przy okazji - jak piszesz [php:1:7c98357f0d]<?php
mail ("baksik7@poczta.fm", "Formularz", $tresc);
?>[/php:1:7c98357f0d]to $treść ma być bez cudzysłowów.
Baksik
9.07.2003, 22:28:04
oki juz ci mówie o co mi chodzi
mam taki formularz
Kod
<form ACTION="slij.php" enctype="text/plain" METHOD="Post">
Imię lub Nick
<br />
<input type="text" name="nick" class="box" />
<br /><br />
Ile masz lat<br />
<input type="TEXT" name="wiek" class="box" />
<br /><br />
<input type="submit" value="Wyślij" /><input type="reset" value="Wyczyść" />
do tego php kod [php:1:43ac8ce2e2]<?php
<?php
$tresc = '';
$tresc .= 'nick = '. $_REQUEST['nick'];
$tresc .= 'wiek = '. $_REQUEST['wiek'];
mail ("baksik7@poczta.fm", "Formularz", $tresc);
?>[/php:1:43ac8ce2e2]
i jak wypelniam formularz to przychodzi do mnie wiadomosc taka :
Kod
nick= wiek=
i nie ma danych ktore wpisalem do formularza
w pliku ślij.php, zrób tak:
[php:1:65276460d0]<?php
var_dump( $_REQUEST );
?>[/php:1:65276460d0] i zobacz co ta tablica tak naprawdę zawiera
Baksik
9.07.2003, 22:37:59
wpisale to co napisales i pokazalo sie cos takiego :
Kod
array(2) { ["LBC"]=> string(32) "925c4586936f3f260432f8e626191a7b" ["Apache"]=> string(32) "213.227.67.145.36611057785926319" }
szczerze mówiąc nic z tego nie kapuje...
KaMeLeOn
9.07.2003, 22:44:19
Użyj tablicy $_POST zamiast $_REQUEST...
racja
Choć nie mam pojecia, czemu tak się dzieje.
Dawno nie trafiłem na serwer, któryby nie obsługiwał $_REQUEST
Baksik
9.07.2003, 23:08:34
teraz wyskakuje cos takiego jak umiescielem te
[php:1:61f1c95d1a]<?php
$tresc = '';
$tresc .= 'nick = '. $_POST['nick'];
$tresc .= 'wiek = '. $_POST['wiek'];
var_dump( $_REQUEST );
mail ("baksik7@poczta.fm", "Formularz", $tresc);
?>
?>[/php:1:61f1c95d1a]
serwer to lycos moze dlatego
Kod
array(4) { ["phpbb2mysql_data"]=> string(9) "s:0:"";" ["adsprefs"]=> string(45) "30:313938362d30322d3231:33322d323030:3f0c8eb3" ["Apache"]=> string(33) "213.227.67.145.258061057788349992" ["LBC"]=> string(32) "9a015434b75d3d4f2bd3787b3c0ff1ba" }
czyli już powinno być dobrze.
Mozesz usunąć var_dump - ten był potrzebny tylko na czas testó. Co najwyzej mozesz jeszcze sprawdzić, co przechowywuje tablica $_POST. ALe to już tylko dla własnej ciekawości
Baksik
9.07.2003, 23:27:28
powinno być dobrze ale nie przychodzi dalej wiadomość z fromularza tylko puste nick = i puste wiek= ;(
[php:1:4f52087b03]<?php
$tresc = '';
$tresc .= 'nick = '. $_REQUEST['nick'];
$tresc .= 'wiek = '. $_REQUEST['wiek'];
mail ("baksik7@poczta.fm", "Formularz", $tresc);
?>[/php:1:4f52087b03]
Kod
<form ACTION="slij.php" enctype="text/plain" METHOD="Post">
Imię lub Nick
<br />
<input type="text" name="nick" class="box" />
<br /><br />
Ile masz lat<br />
<input type="TEXT" name="wiek" class="box" />
<br /><br />
<input type="submit" value="Wyślij" /><input type="reset" value="Wyczyść" />
<br /><br />
<hr />
<br />
</form>
wiadomość która dostaje
Kod
nick= wiek=
pusto
KaMeLeOn
9.07.2003, 23:39:15
Zaraz dostanę zawału...
Usuń var_dump(), ale zostaw $_POST...
Baksik
11.07.2003, 23:01:55
czesc ;-) dzieki zaczelo mi dzialac ;-) wsio ;-) sorry kameleon za problem nie denerwuj sie tak ;-)
dzieki devy
mam jeszcze tylko jedno pytanko mam taki formularz jaki juz znacie ;-)
Kod
<form method=post action="wyslij.php">
Podaj adres e-mail osoby którą chcesz powiadomić
<br />
<input type=text name="email" class="box"><br>
<textarea name="tresc" rows="15" cols="50" class="box">Serdecznie zapraszamy na www.milosc.ab.prv.pl</textarea><br />
<input type="hidden" name="wiadomosc" value="Polecenie strony zostalo wyslanie ze strony www.milosc.ab.prv.pl
" />
<input type=submit value=Wyślij>
<input type=reset value=Wyczyść />
</center>
</form>
i do tego php
[php:1:d0f60ac658]<?php
if (isset($email) );
$tresc = $_POST['tresc'];
$tresc .= $_POST['wiadomosc'];
mail ("$email", "Polecenie serwisu www.milosc.ab.prv.pl", $tresc, "RE: @autor");
$autor = "baksik7@poczta.fm";
echo ("<br /> <br /> <br /><center><font size="5"> Dziękujemy za wypełnienie formularza
</font></center><br />");
echo("<center>e-mial został wysłany na adres:</center>");
echo("<center>$email <br /><br /></center>");
echo("<center>O treści: <br /></center>");
echo("<center>$tresc</center>");
?>[/php:1:d0f60ac658]
jak sie wysle maila dostaje sie wiadomosc
Kod
Serdecznie zapraszamy na www.milosc.ab.prv.Polecenie strony zostalo wyslanie ze strony www.milosc.ab.prv.pl
jak zrobic zeby poprostu ta druga zmienna 'wiadomosc' byl w lini nizej niz 'tresc'
czyli zeby widomosc jaka sie dostanie wygladala tak :
Kod
Serdecznie zapraszamy na www.milosc.ab.prv.
Polecenie strony zostalo wyslanie ze strony www.milosc.ab.prv.pl
dzieki za pomoc , sorry za wszystkie problemy
KaMeLeOn
11.07.2003, 23:34:18
[php:1:56968f9f1b]<?php
$tresc = $_POST['tresc'] . "rn";
$tresc .= $_POST['wiadomosc'];
?>[/php:1:56968f9f1b]
Miałem wtedy zły dzień... :wink:
Baksik
11.07.2003, 23:44:10
dzieki kameleon za ponowna pomoc ;-)
tym razem juz nie bede trul ;-) hehe ;-) pozdrawiam ;-)
DeyV
12.07.2003, 01:38:24
posty w sprawie kożystania z notice, is_set i empty trafiły tu:
http://forum.php.pl/viewtopic.php?t=4038
Baksik
12.07.2003, 12:17:08
cześć to ponownie ja ;-) mam pytanie związane z zapisywaniem i oczytywaniem szukałem na forum ale nie znalazłem albo źle szukałem
mam taki kod do zapisu :
[php:1:81c1714a52]<?php
if(empty($_POST['email']) % ($_POST['wiadomosc'] ) )
{
print("Puste pole email.<br />");
print("Puste pole wiadomosc");
}
else
{
$email = $_POST['email']. "rn";
$kategoria = $_POST['kategoria']. "rn";
$wiadomosc = $_POST['wiadomosc']. "rn";
$file=fopen("dane.txt", "a");
flock($file, 2); //blokujemy
fwrite($file, $email);
fwrite($file, $kategoria);
fwrite($file, $wiadomosc. "rn");
flock($file, 3); //odblokowujemy
fclose($file);
}
?>[/php:1:81c1714a52]
a taki do odczytu:
[php:1:81c1714a52]<?php
$Plik = fopen("dane.txt", "r");
while(!feof($Plik))
{
$Linia = fgets($Plik, 255);
print("$Linia <BR>");
}
fclose($Plik);
?>[/php:1:81c1714a52]
i chce zeby wyniki wyświetlały sie w tabeli ;-)
jak to mam zrobic?
a i zeby na zmiane był kolor tla raz czerwony , raz bialy
czyli 1 <tr><td> - zcerwone
2 - <tr><td> - biale itd. ;-)
prosze o pomoc ;-) i z gory dziekuje ;-)
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.