Hirdetés
Új hozzászólás Aktív témák
-
fordfairlane
veterán
válasz
#68216320
#18085
üzenetére
Ti milyen megoldást használtok ilyen esetben?
A kettő nem zárja ki egymást. Kezelheted a form kirajzolását, a form submitot és a hibakezelést egy helyről, egy handlerből, de a részműveletek több helyen. Itt kettészedtem nézetre és minden másra. Természetesen ez így még mindig nagyon kezdetleges, de remélem, átjön a lényeg, és az újraküldés ellen védett.
form_handler:
<?php
$form_errors = array();
if($_SERVER["REQUEST_METHOD"] == "POST") {
// validálás
$form_errors["email"] = "Ez az email már foglalt";
$if(!count($form_errors)) {
// mentés
// ...
header("Location: " . $_SERVER["SCRIPT_NAME"] . "?success=1");
exit;
}
}
$success = isset($_GET["success"]?true:false);
require_once("form.php");form.php:
<?php
<?php if(success): ?>
A regisztráció perfektül organizálódik.
<?php endif; ?>
<form method="post">
<input type="text" name="email">
<?php if(isset($form_errors["email"])): ?>
<div class="errorlabel"><?=htmlspecialchars($form_errors["email"])?></div>
<?php endif; ?>
</form> -
Sk8erPeter
nagyúr
válasz
#68216320
#18085
üzenetére
Az első mindenképpen ocsmány megoldás, mivel így nem válik szét a megjelenítés és az adatok validálása, feldolgozása, adatbázisba írása (meg hasonló műveletek). A form kiírásának semmi köze nem szabadna, hogy legyen ahhoz, hogy aztán mit kezdesz az adataiddal. Szóval mindenképp válaszd külön a kettőt. Ezért szokás szétválasztani a különböző rétegeket (lásd MVC-szemlélet és társai).
Új hozzászólás Aktív témák
- Autós topik
- Formula-1
- AMD Ryzen 9 / 7 / 5 9***(X) "Zen 5" (AM5)
- Elektromos autók - motorok
- Motorola Edge 40 - jó bőr
- Google Pixel topik
- Székesfehérvár és környéke adok-veszek-beszélgetek
- Milyen TV-t vegyek?
- Xiaomi 15 - kicsi telefon nagy energiával
- alza vélemények - tapasztalatok
- További aktív témák...
- Apple Watch SE (2024) Eladó
- Qnap TS-463U, 4 magos AMD CPU, 2x2TB WD Red, 8GB, 2x10GB sfp, 4x 1GB LAN
- Dji Goggles 3 garanciával/ Neo2, Neo, Avata2, Mini 4 Pro, Air3 / Dji Beszámitás lehetséges
- IPAD Mini 2 64GB Wifi+Cellular, Szép állapot, üzletből, garanciával
- Latitude 5550 15.6" FHD IPS Ultra 7 165H RTX 2050 32GB 1TB NVMe ujjlolv IR kam gar
- Lenovo Thinkpad T14 Gen 3, 1 Év Garanciával
- LG 55B4 - 55" OLED - 4K 120Hz 1ms - NVIDIA G-Sync - FreeSync Premium - HDMI 2.1 - PS5 és Xbox Ready
- Xiaomi 13T Dobozzal Töltővel
- ÁRGARANCIA!Épített KomPhone Ryzen 7 5700X 16/32/64GB RAM RTX 5060 Ti 16GB GAMER termékbeszámítással
- HP ProDesk 600 G4 i5-8100 8GB 256GB 1 év garancia
Állásajánlatok
Cég: ATW Internet Kft.
Város: Budapest
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest
Az űrlapon ellenőrzés, a külön php-ben megint ellenőrzés és adatbázisba íráshoz meg ugye mindig escape vagy prepare.

