Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: prosty scrypt a nie dzila...
Forum PHP.pl > Forum > Gotowe rozwiązania
pyziak
mam scrypt na stronie www "napisz do mnie" no i nie dizla. Nie przyjmoje zmienych, alty tylko z pod windowsa pod Linuxem dziala poprawnie. Nie mam pojecia dla czego tak sie dzieje scrypt jest tu http://www.big.csk.pl/formularz.rar. Niech ktos popatzry i ipowie co jest nie tak.
Pozdrowienia.
Jabol
Napisz do mnie? Czyli to musi być coś na formularzu? Czyli poczytaj o zmiennych globalnychi register globals. tutaj link.
pyziak
@Jobal moze i tak tylko problem w tym ze ja sie na tym nie znak , koleszka pisal mi to a teraz nie ma czasu bo pisz jaka wazna baze a jest mi to potzrebne na wczoraj. Jakbys byl taki uprzejmy i wyedytowal ten pliczek znajdujac przyczyne jego nie dzilania to bende wddzieczny.
Jabol
normalnie tego nie robie, ale ten skrypt jest tak namieszany, że chyba szybciej byloby go napisac od nowa. Tak powineń dzialac[php:1:83341a178d]<?php
// Autor: © Perry perry(at)ry.pl

// Modydfikacja 20.06.2003 22:15 przez Jabol

// Desc: Prosty formularz do kontaktow z autorem strony czy cus smile.gif

// Tu wpisujesz swoj email - tam gdzie ma byc poczta dostarczona
$gdzie_email="sklep@antyki.ry.pl";

// Tu jak sie nazywasz smile.gif - choc nie konieczenie, moze zostac puste.
$gdzie_imie="";

// Temat jaki maja posiadac wiadomosci z formularza
$temat = "Wiadomosc z Formularza";

//jeszcze trzeba ustawic zmienna $mojamail
$mojamail="admin@serwer.pl";

// Ponizej to juz zmieniasz na wlasna odpowiedzialnosc tongue.gif

print "<html>n";
print "<head>n";
print "<title> Formularz kontaktowy </title>n";
print " <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-2">n";
print "</head>n";

print "<center>n";
print "<table>n";
print "<form name="form" action="formularz.php" method="post" enctype="text/plain">n";

print "<tr>n";
print " <td>n";
print " Twoj e-mail:";
print "n </td>n";
print " <td>n";
print " <input type="text" size="10" name="ludz_imeil" maxlenght="30">";
print "n</td>n";
print "</tr>n";

print "<tr>n";
print " <td>n";
print " Twoje imie:";
print "n </td>n";
print " <td>n";
print " <input type="text" size="10" name="ludz_name" maxlenght="30">";
print "n</td>n";
print "</tr>n";


print "<tr>n";
print " <td>n";
print " Wiadomosc:";
print "n </td>n";
print " <td>n";
print " <textarea name="wiadomosc_ludzia" cols="40" rows="10"></textarea>";
print "n </td>n";
print "</tr>n";
print "<tr>n";
print " <td>n";
print " <input type="submit" value="Wyslij">";
print "n </td>n";
print " <td>n";
print " <input type="reset" name="send" value="Wyszczysc Pola"></p>";
print "n </td>n";
print "</tr>n";
print "</form>n";
print "</table>";
print "<br>";
print "</p>";

// if (($HTTP_POST_VARS['imeil_ludzia']) && ($HTTP_POST_VARS['wiadomosc_ludzia'] != NULL))
// if (($_POST["ludz_imeil"] !=NULL) && ($_POST["ludz_wiadomosc"] != NULL))
if (($_POST["ludz_imeil"] !="") && ($_POST["wiadomosc_ludzia"] != ""))
{

$email_goscia=$_POST['ludz_imeil'];
print "DEBUG";
print "<br>email: ";
print $email_goscia ;
print "<br>";

$wiadomosc =$_POST['wiadomosc_ludzia'];

print "<br>wiadomosc: ";
print $wiadomosc ;
print "<br>";

$naglowki = "From: ".$_POST['ludz_name']." <".$email_goscia.">rn";
$naglowki .= "To: ".$gdzie_imie." <".$gdzie_email.">rn";
$naglowki .= "X-Mailer: Formularz z www";


mail($mojemail,$temat, $wiadomosc, $naglowki);

print "Wiadomosc zostala wyslana.n";

} else {
print "Pamietaj ze musza byc wypelnione obydwa pola.";
}
print "n</center>n";
print "</html>";
?>[/php:1:83341a178d]
pyziak
@Jabol dzieki za zainteresownie i twoja prace ale dalej nie wysyla maila, objaw jest taki jak byl przeladowuje strone i sa czyste pola, tak jak by pola nie byly wypelnione sad.gif, co robic

ps. formularz jest na stronie http://antyki.ry.pl/formularz.php
Jabol
ale maila wysyła poprawnie (bo na tym się skupiłem pisząc poprawkę)? Bo problem z przeładowaniem da się załatwić praktycznie znając tylko HTML. Po prostu dajesz przy inpucie vaule="'.$_POST['nazwa_zmiennej'].'" a w textarea to po prostu wbijasz zmienną pomiędzy znacznik otwierający i zamykający!
pyziak
no wlasnie chodzi o to ze nie wysyla maila wogule. Zeby bylo smiesniej to z pod linuxa nawed ten poprzednij scrypt wysylal a z pod windowsa nie wysal a ni tamten ani ten poprawiony. Ale funkcja mail jest wlaczona bo jak wzycalem taki plik na server
Kod
<?php

mail("sklep@antyki.ry.pl", "Tytul maila", "Line 1nLine 2nLine 3");

?>
i odpallem pil w przegladarce to dostawal maila.
Jabol
a spróbuj wysłać z nagłówkami
pyziak
znaczy jak z naglowkami ?
ps. nie jestem asem smile.gif znaczy wogule sie nie znam na php
ale obiecuke ze jak bende mnial trohce czasu to sie naucze smile.gif
Jabol
nagłówki to jest tam właśnie from, to i x-mailer
pyziak
hmm chyba zalapalem oco ci chodzi z tymi naglowkami zroilem tak
Kod
<?php

mail("sklep@antyki.ry.pl", "Tytul maila", "Line 1nLine 2nLine 3");

  $naglowki .= "From: ".$imie_goscia." <".$email_goscia.">rn";

  $naglowki .= "To: ".$gdzie_imie." <".$gdzie_email.">rn";

  $naglowki .= "X-Mailer: Formularz z www";

?>
i nic mail taki sam jak byl wczesniej bez naglowkow
pyziak
znczy to jest naglowek
Cytat
<br />
<b>Warning</b>:  Call-time pass-by-reference has been deprecated - argument passed by value;  If you would like to pass it by reference, modify the declaration of [runtime function name]().  If you would like to enable call-time pass-by-reference, you can set allow_call_time_pass_reference to true in your INI file.  However, future versions may not support this any longer.  in <b>/var/www/email/IlohaMail/source/view.php</b> on line <b>51</b><br />
Return-Path: <ushttpd@mafia.ry.pl>
Received: from mafia.ry.pl (ushttpd@localhost [127.0.0.1]) by mafia.ry.pl (8.12.9/8.12.9) with ESMTP id h5KLNwC7026605 for <sklep@antyki.ry.pl>; Fri, 20 Jun 2003 23:23:58 +0200
Received: (from ushttpd@localhost) by mafia.ry.pl (8.12.9/8.12.9/Submit) id h5KLNwsp029102; Fri, 20 Jun 2003 23:23:58 +0200
Date: Fri, 20 Jun 2003 23:23:58 +0200
From: ushttpd <ushttpd@mafia.ry.pl>
Message-Id: <200306202123.h5KLNwsp029102@mafia.ry.pl>
To: sklep@antyki.ry.pl
Subject: Tytul maila
Jabol
zrob tak[php:1:ffa2e6a797]<?php
mail("sklep@antyki.ry.pl", "Tytul maila", "Line 1nLine 2nLine 3", "From: ".$imie_goscia." <".$email_goscia.">rnTo: ".$gdzie_imie." <".$gdzie_email.">rnX-Mailer: Formularz z www");
?>[/php:1:ffa2e6a797]
pyziak
hmm chyba jest tak jak tzreba bo taki mai lprzyszedl
Cytat
<>
To: <>
X-Mailer: Formularz z www

Line 1
Line 2
Line 3

i co teraz?
ps. mam baze danych do tej strony moze by cos z wykozystaniem BD zrobic (nie wiem moze bedzie lepiej prosciej) ?
kwiateek
Cytat
ps. mam baze danych do tej strony moze by cos z wykozystaniem BD zrobic (nie wiem moze bedzie lepiej prosciej) ?

a co bys w tej bazie chcial przechowywac?
pyziak
@kwiatek nie wiem co tam przechowywac, ale spotkalemsie z formularzami opartymi na BD, i na tym samym serverze mam 2 cms-y phpnuka i Mambo i w obu dziala wywylaniw maila ze strony, a jk wiesz wymagaja BD i gdybys przeczytal oprzednie posty to bys wiedzial ze niaznam sie na php,wiec zamiast sie wysmiewac lepiej bys pomogl
kwiateek
Cytat
wysmiewac lepiej bys pomogl

gdzie napisalem jakas tresc ktora swidczylaby o tym ze sie z Ciebie wysmiewam?
Jabol
to ja już nie wiem co jest nie tak z tym skryptem... po prostu może używaj go linuxie i bedzie ok
pyziak
@kwiatek noze i nie ale odnioslem takie wrazenie
Cytat
a co bys w tej bazie chcial przechowywac?
bo przeciesz wiesz ze chodzi o wysylamie maila z www wiec czemu zadajesz takie pytania ?
w/g mnie czloowiek z taka iloscia postow jak ty musi znac zagadniae php wiec jeszcze bardziej mnie zdzilwilo to.
ale nic jak sie czujesz urazony to soory.
Poprostu nikt nie jest w stanie mi pomoc a podobno sprawa jest banalnie prosta.
W dalszym ciagu prosze o pomoc
pyziak
@jabol smile.gif no tak gdyby to bylo dla mnie to zaden problem ale jest to na strone ze sprzedarza Antykow.
A jak wiesz statystyki mowia ze 98% zwyklych obywateli uzywa piepszonej Windozy.
Jabol
ale statystyki i wiedza mówią, żę możliwość wysłania mail'a zależy od serwera a te w większości stoją na Unix'ach (w tym i linux), a jeżeli na windows stoją to są to w większości strony wielkich korporacji z kupą kasiorki, na którą ta strona nie wygląda.
pyziak
@jabol server na ktorym jezy stronka stoii jak najbardziej na Linuxie - tylko osoby przegladajace ta stronke po windoza nie moga wysylac maili (chodzi mi o szarego czlowieczka, ktory se lasi po necie a nie o konfiguracje servera).
hmm nie mam pojecia co tu zrobic questionmark.gif?
Fo
mhm... wnioski...
1.userzy ktorzy bawia sie linux'em moga ze skryptu korzystac..
2.userzy ktorzy bawia sie winda.... nie moga korzystac...
jakim cudem ? przesz to na serwerze lezy i jest na nim uruchamiane...
a czy przypadkiem admin tego serwera nie wylaczyl .... mail() :?:
pyziak
@fo nie funkcja mail jest wlaczona poniewarz gdzy
Cytat
Kod php:  
<?php  
mail("sklep@antyki.ry.pl", "Tytul maila", "Line 1nLine 2nLine 3", "From: ".$imie_goscia."
<".$email_goscia.">rnTo: ".$gdzie_imie." <".$gdzie_email.">rnX-Mailer: Formularz z www");  
?>  
 
to dostawalem maila z naglowkiem
kwiateek
Cytat
@kwiatek nie wiem co tam przechowywac, ale spotkalemsie z formularzami opartymi na BD, i na tym samym serverze mam 2 cms-y phpnuka i Mambo i w obu dziala wywylaniw maila ze strony, a jk wiesz wymagaja BD i

To ze wymagaja bazy danych nie znaczy ze wymagaja bazy do wysylania mejli. W łapatologicznym skrocie do wysylania mejli z uzyciem php potrzebujesz serwer z obsluga php i z wlaczona funkcja mail. Napisales w swoim wczesniejszymy poscie:
Cytat
hmm chyba jest tak jak tzreba bo taki mai lprzyszedl
Cytat
<>
To: <>
X-Mailer: Formularz z www

Line 1
Line 2
Line 3

i co teraz?
ps. mam baze danych do tej strony moze by cos z wykozystaniem BD zrobic (nie wiem moze bedzie lepiej prosciej) ?

czyli rozumiem ze wszystko dziala okej.
Zapytalem sie co chcialbys przechowywac w tej bazie danych tylko ze wzgledu na to zeby ustosunkowac swoja kolejna odpowiedz a skoro Ty sam nie wiesz co chcialbys tam trzymac to coz ja Ci raczej nie pomoge.
Cytat
w/g mnie czloowiek z taka iloscia postow jak ty musi znac zagadniae php wiec jeszcze bardziej mnie zdzilwilo to.

Co ma ilosc postow do wiedzy jaka posiadam (nie chodzi mi o to zeby byc tu skromnym i stwierdzac ze takowej [jakiej takie] nie posiadam), przeciez nie liczy sie ile piszesz ale jak piszesz i ile twoje posty wnosza czegos kreatywnego / pomocnego dla innej / innych osob do dyskusji.
Cytat
Poprostu nikt nie jest w stanie mi pomoc a podobno sprawa jest banalnie prosta.

No wlasnie i odpowiedz juz padla chyba ze dwa razy. Serwer na ktorym odpalany skrypt nie dziala ma zapewne wylaczona obsluge funkcji mail(). To ze ktos wywolujacy skrpyt po user-side ma win badz linx'a nie ma najmniejszego znaczenie...
wyjasnienie masz w posice fo.
pyziak
mam włączony sendmail i kropka bo maile sie wysylaja z innych scryptow tylko dochodza puste (tak jakby nie przyjmowalo zmienych)
KaMeLeOn
Cytat
mam włączony sendmail  i kropka bo maile sie wysylaja z innych scryptow tylko dochodza puste (tak jakby nie przyjmowalo zmienych)

Więc problem jest przy konstruowaniu wiadomości, a nie przy wysyłaniu...
Fo
widze ze zaraz (jesli nie juz smile.gif) trafi tu pare osoob szlag jasny... to moze wyprostujmy nieco sytuacje:
@pyziak : podaj jeszcze raz caly kod skryptu ktory odpalasz bo mam jakies takie dziwne przeczucie ze cos tam mogles zle dopisac....
pyziak
@KaMeLeOn byc moze jak juz pisalem nie zabardzo sie znam- To wyglada tak ze po wypelnieniu wszystkich pol formularza i nacisnieciu wyslij zamiast (przegladarka) przechodzic do strony z info ze mail zosta wyslany, przeladowuje strone i sa puste pola (tak jak by przed wyslaniem nie byly wypelnione wsystkie ), no i oczywiscie nie wysyla.
Przy scryptach gdzie bez wzglegu na poprawnosc wypolnionych pol mail ma byc wysslany (byc moze sie zle wyrazam, ale staram sie powiedizec to dokladnie ), mail zostaje wyslany,ale niestety dochodzi pusty- tak jakby zadne poje w formularzu nie bylo wypelnione.
pyziak
@Fo
oto on:
[php:1:13060f3327]<?php
<link href="style.css" rel="stylesheet" type="text/css">
<body background="images/konie_tlo2.jpg">
<?php
// Autor: © Perry perry(at)ry.pl

// Modydfikacja 20.06.2003 22:15 przez Jabol

// Desc: Prosty formularz do kontaktow z autorem strony czy cus

// Tu wpisujesz swoj email - tam gdzie ma byc poczta dostarczona
$gdzie_email="sklep@antyki.ry.pl";

// Tu jak sie nazywasz - choc nie konieczenie, moze zostac puste.
$gdzie_imie="";

// Temat jaki maja posiadac wiadomosci z formularza
$temat = "Wiadomosc z Formularza";

//jeszcze trzeba ustawic zmienna $mojamail
$mojemail="sklep@antyki.ry.pl";

// Ponizej to juz zmieniasz na wlasna odpowiedzialnosc

print "<html>n";
print "<head>n";
print "<title> Formularz kontaktowy </title>n";
print " <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-2">n";
print "</head>n";

print "<center>n";
print "<table>n";
print "<form name="form" action="formularz.php" method="post" enctype="text/plain">n";

print "<tr>n";
print " <td>n";
print " Twoj e-mail:";
print "n </td>n";
print " <td>n";
print " <input type="text" size="10" name="ludz_imeil" maxlenght="30">";
print "n</td>n";
print "</tr>n";

print "<tr>n";
print " <td>n";
print " Twoje imie:";
print "n </td>n";
print " <td>n";
print " <input type="text" size="10" name="ludz_name" maxlenght="30">";
print "n</td>n";
print "</tr>n";


print "<tr>n";
print " <td>n";
print " Wiadomosc:";
print "n </td>n";
print " <td>n";
print " <textarea name="wiadomosc_ludzia" cols="40" rows="10"></textarea>";
print "n </td>n";
print "</tr>n";
print "<tr>n";
print " <td>n";
print " <input type="submit" value="Wyslij">";
print "n </td>n";
print " <td>n";
print " <input type="reset" name="send" value="Wyszczysc Pola"></p>";
print "n </td>n";
print "</tr>n";
print "</form>n";
print "</table>";
print "<br>";
print "</p>";

// if (($HTTP_POST_VARS['imeil_ludzia']) && ($HTTP_POST_VARS['wiadomosc_ludzia'] != NULL))
// if (($_POST["ludz_imeil"] !=NULL) && ($_POST["ludz_wiadomosc"] != NULL))
if (($_POST["ludz_imeil"] !="") && ($_POST["wiadomosc_ludzia"] != ""))
{

$email_goscia=$_POST['ludz_imeil'];
print "DEBUG";
print "<br>email: ";
print $email_goscia ;
print "<br>";

$wiadomosc =$_POST['wiadomosc_ludzia'];

print "<br>wiadomosc: ";
print $wiadomosc ;
print "<br>";

$naglowki = "From: ".$_POST['ludz_name']." <".$email_goscia.">rn";
$naglowki .= "To: ".$gdzie_imie." <".$gdzie_email.">rn";
$naglowki .= "X-Mailer: Formularz z www";


mail($mojemail, $temat, $wiadomosc, $naglowki);

print "Wiadomosc zostala wyslana.n";

} else {
print "Pamietaj ze musza byc wypelnione obydwa pola.";
}
print "n</center>n";
print "</html>";
?>

?>[/php:1:13060f3327]
Fo
nie no to jak to wkoncu jest questionmark.gif
Cytat
//jeszcze trzeba ustawic zmienna $mojamail  
$mojamail="sklep@antyki.ry.pl";


a nizej masz :

mail($mojemail,.................
Jabol
taka literówka... to pewnie dlatego, żę na linuxie była ta zmienna ustawiona w php.ini i po otrzymaniu pustej wartości przybrała tą z php.ini a na win nie było już tak fajnie.

Ps.
Ale ja nie znosze tych literówek
pyziak
@Fo zminenilem w obu miejscach na [php:1:3eae96fd16]<?php//jeszcze trzeba ustawic zmienna $mojamail
$mojemail="sklep@antyki.ry.pl";

?>[/php:1:3eae96fd16]
i jak nie dizlalo tak i nie dziala.sad.gif

ps. @Jabol zmienilem bbcode na takie jak tzreba. w poscie ze scryptem
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.