2025. április 15., kedd

Tanfolyami jelentkezés – HTML űrlap készítése, adatok feldolgozása PHP-val, validációval és formázással

 HTML űrlap (jelentkezes.html)

Készíts egy HTML oldalt, amely egy tanfolyamra történő jelentkezési űrlapot jelenít meg. Az űrlap legyen középre igazított, esztétikusan megformázva (használj beágyazott CSS-t vagy <style> blokkot). Az űrlap POST metódussal küldje az adatokat a feldolgoz.php fájlba.

A kötelező mezők:

Mező neve

Típus

Követelmény

Teljes név

text

legalább 3 karakter, formázd: kisbetűs → első betű nagy

Életkor

number

legalább 18

E-mail cím

email

ellenőrizni kell az email-formátumot

Telefonszám

tel

legalább 9 karakter, szóközök eltávolíthatók

Választott tanfolyam

select

kötelező választani

Select opciók:

  • Webfejlesztés
  • Adatbázis-kezelés
  • Hálózati alapismeretek
  • Python programozás

A gomb felirata: Jelentkezés elküldése


PHP feldolgozás (feldolgoz.php)

Írj egy PHP szkriptet, amely:

  • Ellenőrzi, hogy minden mező ki van-e töltve
  • Érvénytelen adat esetén piros színű hibaüzeneteket ír ki
  • Helyes adatok esetén megjeleníti a feldolgozott értékeket

A következő PHP függvényeket kell használni, az adatbiztonság és megjelenítés érdekében:

  • trim() – szóközök eltávolítása
  • strtolower() – kisbetűsítés
  • ucfirst() vagy ucwords() – első betű(k) nagybetűsítése
  • htmlspecialchars() – XSS védelem

Extra pont:

Szervezz ki legalább egy tisztító-függvényt saját névvel (pl. function tisztit($bemenet) { ... }), amely a fenti műveleteket végzi, és használd ezt a névnél, e-mailnél, telefonszámnál stb.

Helyes kitöltés esetén: 






2025. április 10., csütörtök

Students api - Rigó Dávid megoldása és jegyzete

Students api

a Students adatbázishoz tartozó Laravel api elkészítése
Kezdés:

laravel new studens

A következő lépésben a starter kit-ek közül a none-t válasszuk, majd a Pest-et

Az adatbázis választásnál a mysql-t válasszuk

Modell

php artisan make:model Students

A létrejött Students.php file-t az app/Models mappában találjuk, a fájlra navigálás után a következő kódot illesszük be:

<?php

namespace App\Models;

use Illuminate\Database\Eloquent\Model;

class Students extends Model

{

// itt tudjuk beállítani az adatbázisban lévő

            //táblát, amivel szeretnénk dolgozni

    protected $table = 'students';

            //(opcionális) beállíthatjuk az elsődleges kulcsot is

    protected $primaryKey = 'id';

            //ha a $timestamps-ot false-ra állítjuk akkor az adatbázis

            // created_at, updated_at mezőit letiltja

    public $timestamps = false;

            //a $fillable-ben megadhatjuk az kiválaszott táblában lévő mezőket a        amelyekkel szeretnénk dolgozni

    protected $fillable = ['name', 'email', 'age'];

}

Controller

php artisan make:controller StudentsController –api

Ez a kontroller a diákok a adatainak kezelésére szolgál, A kontroller CRUD műveleteket hajt végre metódusok segítségével.

a létrejött StudentsController.php filet az app/http/Controllers mappában találjuk, a fájlra navigálás után a következő kódot illesszük be:

<?php

namespace App\Http\Controllers;

use Illuminate\Http\Request;

use App\Models\Students;

class StudentController extends Controller

{

    public function index()

    {

        return Students::all();

    }

    public function store(Request $request)

    {

try {

        $menet = Students::create($request->only(['name', 'email', 'age']));

        return response()->json($menet, 201);

    } catch (\Exception $e) {

        return response()->json(['error' => $e->getMessage()], 500);

    }    }

    public function show($azon)

    {

        return Students::findOrFail($azon);

    }

    public function update(Request $request, $azon)

    {

        $menetrend = Students::findOrFail($azon);

        $menetrend->update($request->only(['name', 'email', 'age']));

        return response()->json($menetrend);

    }

    public function destroy($azon)

    {

        Students::destroy($azon);

        return response()->json(['message' => 'Törölve']);

    }

}

Routes

php artisan install:api

amint létrejött az api.php file a routes mappában a következó kódot illesszük be

<?php

use Illuminate\Http\Request;

use Illuminate\Support\Facades\Route;

use App\Http\Controllers\MenetrendController;

use App\Http\Controllers\StudentController;

Route::apiResource('student', StudentController::class);

 

Összegző

ha minden jól megy akkor az következő paranccsal elindíthatjuk a projektet

php artisan serve

ha tesztelni szeretnénk az api működését akkor valamilyen api tesztelő alkalmazást/extension-t használhatunk (Postman, EchoApi)

ahol a new http Request hombra kattintva


elérhetővé válik a controll panel az „Enter URL or paste text” mezőbe illesszük be a megnyitott projekt URL-jét és a tezsteléshez még egy /api/student –et kell írnunk

(pl.: http://127.0.0.1:8000/api/students)

5 fajta tesztelési lehetőségünk van a Controllerben eddig definiáltak alapján

(GET,GET{id},POST,PUT{id},DELETE{id})

adatbázis

CREATE TABLE `students`(

  `id` int(11) NOT NULL,

  `name` varchar(100) NOT NULL,

  `email` varchar(150) NOT NULL,

  `age` int(11) NOT NULL,

  `created_at` timestamp NOT NULL DEFAULT current_timestamp()

) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;

 

Tanfolyami jelentkezés – HTML űrlap készítése, adatok feldolgozása PHP-val, validációval és formázással

  HTML űrlap (jelentkezes.html) Készíts egy HTML oldalt, amely egy tanfolyamra történő jelentkezési űrlapot jelenít meg. Az űrlap legyen ...