Oop post od uzivatele – PHP – Fórum – Programujte.com
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu

Oop post od uzivatele – PHP – Fórum – Programujte.comOop post od uzivatele – PHP – Fórum – Programujte.com

 

luboš
~ Anonymní uživatel
95 příspěvků
13. 6. 2015   #1
-
0
-

Ctěl bych vědět jak správně posílat data od uživatele do třídy. Zajímá mě jak se pracuje ve třídě s $_POST["data"]. Někde jsem četl že se na tyto data nemá sahat mají se  nechat jak jsou ,tedy neprovádět s nimi akci jako : $data = $_POST["data"] ale pracovat s nimi všude v kódu jako s  $_POST["data"].

Ovšem narazil jsem na problém když jsem zkusil odeslt email s hlavčkou do které jsem zadal tyto data jako $_POST["data"] email se odeslal ale s varovaním že hlavička emailu nemohla být sestavena a když jsem to zkusil s $data tak už vše bylo v pořádku a hlavička byla odeslána.

toto je kód s $data ten funkční:

Class EmailHtml{
private $headers;
 
   public function __construct(){     
 } 
 
   public function extra_mail($to, $subject, $message, $from){
  
          $message = wordwrap($message, 70, "<br>\r\n");
          $message ='<b><i><span style="color: green">'.$message.'</span></i></b>'; 
      
          $this->headers = "From:$from.\r\n";
          $this->headers .= "Reply-To:$from\r\n";
          $this->headers .= "CC: nekdo@example.com\r\n";
          $this->headers .= "MIME-Version: 1.0\r\n";
          $this->headers .= "Content-Type: text/html; charset=ISO-8859-1\r\n";
       return mail($to, $subject, $message, $this->headers);
    }    
}
    $to = $_POST['to'];
    $from = $_POST['from'];             
    $subject =$_POST['subject']; 
    $message = $_POST['message']; 
     
   $objEmail = new EmailHtml ();  
   $objEmail->extra_mail($to, $subject, $message, $from);
   
   exit;

prosím o radu jak to udělat abych nemusel používat $data a ukázku jak by to na mé=m příkladu vypadalo v praxi jak to předat do třídy a jak by to vypadalo uvnitř třídy. dík

Nahlásit jako SPAM
IP: 89.103.9.–
Kit+15
Guru
13. 6. 2015   #2
-
0
-

#1 luboš
Proměnnou $_POST bys vůbec neměl modifikovat, ale jinak s ní můžeš pracovat bez omezení.

V uvedeném příkladu však vůbec nepoužíváš OOP. Vlastně jsi použil třídu tak, jako kdybys používal běžnou funkci.

V ukázce nikde nevidím proměnnou $data. Navíc je to poměrně nevhodný název pro proměnnou.

Nahlásit jako SPAM
IP: 2a00:1028:83a0:37a6:221:5...–
Komentáře označují místa, kde programátor udělal chybu nebo něco nedodělal.
luboš
~ Anonymní uživatel
95 příspěvků
13. 6. 2015   #3
-
0
-

$data jsem pouzil jen jako příklad , a email jsem dal do třídy jen proto aby jsem se vyhnul špagetám, ovšem nerozumím tomu proč to není OOP, je to ve třídě a vytvořil jsem objekt třídy tak si myslím že to je OOP ??.

Nahlásit jako SPAM
IP: 89.103.9.–
Kit+15
Guru
13. 6. 2015   #4
-
0
-

#3 luboš
Ten objekt nemá konstruktor, nedrží stav (data) a má jen jednu metodu. Kdybys použil obyčejnou funkci, vypadalo by to prakticky stejně a bylo by ti jasné, že jedna funkce OOP nedělá.

Nahlásit jako SPAM
IP: 2a00:1028:83a0:37a6:221:5...–
Komentáře označují místa, kde programátor udělal chybu nebo něco nedodělal.
luboš
~ Anonymní uživatel
95 příspěvků
13. 6. 2015   #5
-
0
-

ok dík za vysvětlení

Nahlásit jako SPAM
IP: 89.103.9.–
Zjistit počet nových příspěvků

Přidej příspěvek

Toto téma je starší jak čtvrt roku – přidej svůj příspěvek jen tehdy, máš-li k tématu opravdu co říct!

Ano, opravdu chci reagovat → zobrazí formulář pro přidání příspěvku

×Vložení zdrojáku

×Vložení obrázku

Vložit URL obrázku Vybrat obrázek na disku
Vlož URL adresu obrázku:
Klikni a vyber obrázek z počítače:

×Vložení videa

Aktuálně jsou podporována videa ze serverů YouTube, Vimeo a Dailymotion.
×
 
Podporujeme Gravatara.
Zadej URL adresu Avatara (40 x 40 px) nebo emailovou adresu pro použití Gravatara.
Email nikam neukládáme, po získání Gravatara je zahozen.
-
Pravidla pro psaní příspěvků, používej diakritiku. ENTER pro nový odstavec, SHIFT + ENTER pro nový řádek.
Sledovat nové příspěvky (pouze pro přihlášené)
Sleduj vlákno a v případě přidání nového příspěvku o tom budeš vědět mezi prvními.
Reaguješ na příspěvek:

Uživatelé prohlížející si toto vlákno

Uživatelé on-line: 0 registrovaných, 11 hostů

Podobná vlákna

Geolokace uživatele — založil richard.zavodny

Login uživatele — založil Counter

C# necinnost uzivatele — založil double

Přihlášení uživatele — založil quest

 

Hostujeme u Českého hostingu       ISSN 1801-1586       ⇡ Nahoru Webtea.cz logo © 20032024 Programujte.com
Zasadilo a pěstuje Webtea.cz, šéfredaktor Lukáš Churý