Autor | Zpráva | ||
---|---|---|---|
roco Profil * |
#1 · Zasláno: 18. 7. 2012, 12:03:39
Mám tento kus kodu, mohu volat metodu cs_mail takto? Nejak me to nechce chodit a nevim proc, promenne to pri pouziti print vypise v pohode, chyba je nekde v te metode :(
Class Order { function autoUTF($s) { } function cs_mail($to, $predmet, $zprava, $head = "") { } function checkform() { $this->cs_mail("$mail","$predmet","$zprava",$head=""); } } $NewOrder = new Order(); $NewOrder->checkform(); |
||
ShiraNai7 Profil |
#2 · Zasláno: 18. 7. 2012, 12:05:51
roco:
Celé volání té metody je divné. Co přesně očekáváš od předávání nedefinovaných proměnných (které jsou navíc zbytečně v uvozovkách) a jedné asociace ničeho do $head? |
||
roco Profil * |
#3 · Zasláno: 18. 7. 2012, 12:09:22
ShiraNai7:
No proc by to bylo divne? cs mail proste odesle mail pomoci funkce mail, konrketne takto : function cs_mail($to, $predmet, $zprava, $head = "") { $predmet = "=?utf-8?B?".base64_encode($this->autoUTF($predmet))."?="; $head .= "MIME-Version: 1.0\r\n"; $head .= "Content-Type: text/html; charset=\"utf-8\"\r\n"; $head .= "Content-Transfer-Encoding: base64\r\n"; $zprava = base64_encode($this->autoUTF($zprava)); return mail($to, $predmet, $zprava, $head); } no a ja potrebuju po kontrole polozek, zda jsou vsechny vyplneny ten mail odeslat. mam to takto: if (!$jmeno || !$adresa || !$psc || !$tlf || !$oemail || !$kat_uzemi || !$cpopis || !$poznamka ) { echo '<h1>Upozornění o chybě</h1>'; echo '<p>Některá z položek nebyla vyplněna! Klikněte prosím znovu na položku <strong><a href="javascript:self.history.back();">Objednávku služeb</a></strong> a doplňte všechny povinné údaje. Před odesláním formuláře zároveň vygenerujte nový kód captcha.Poté forumlář znovu odešlete.</p>'; } else { $this->cs_mail($mail,$predmet,$zprava,$head=""); } |
||
Majkl578 Profil |
#4 · Zasláno: 18. 7. 2012, 12:09:55
To co jsi napsal nemá s OOP nic společného. To už raději zůstaň u běžných funkcí.
|
||
roco Profil * |
#5 · Zasláno: 18. 7. 2012, 12:11:19
Proč by nemělo?
|
||
Kcko Profil |
roco:
Protože jsi to jen obalil třídou, aby se to jevilo jako objekt, ale v ničem Ti to nepomáhá. |
||
Ugo Profil |
#7 · Zasláno: 18. 7. 2012, 12:32:01
roco:
„Proč by nemělo?“ odkdy umí objednávky posílat emaily nebo převádět do utf? jde ale taky o to zda ti to vadí že to není OOP, třída je dobrá i jako pouhý obalující prvek - což je toto, ale na to ses neptal volat jí takto můžeš, jen bych odstranil ty uvozovky u parametrů. V tom kódu co jsi dodal chybu nevidím, takže otázka je v čem je vlastně problém a jaká je otázka? :) |
||
roco Profil * |
#8 · Zasláno: 18. 7. 2012, 12:35:18 · Upravil/a: roco
problém je v tom, že to žádný email neodešle
zkusím to pomocí phpmaileru. to bude asi lepší |
||
Keeehi Profil |
#9 · Zasláno: 18. 7. 2012, 14:52:42
roco:
Tipnu si. Testuješ to na localhostu a žádný mailserver jsi neinstaloval že? |
||
roco Profil * |
#10 · Zasláno: 18. 7. 2012, 15:13:48
keeehi : špatně, tstuji to na webu a ne na localhostu :) a phpmailer používám a vypadá fajn
|
||
Časová prodleva: 12 let
|
0