PDA

View Full Version : [PHP]Struttura basilare di una pagina[NOOB]


Nightingale
13-12-2005, 11:13
Ciao a tutti!
Come premesso nel topic, sono un principiante. Lavoro su Oracle, ma per hobby sto imparando il php. Sto cercando di mettere in piedi un piccolo sito aziendale per un mio amico tramite php e mysql.
Volevo chiedervi un parere su come ho impostato la struttura delle mie pagine; perdonatemi se le cose che sto per dire non hanno né capo e né coda, ma gradirei una critica per potermi migliorare o, eventualmente, continuare su questa strada con tranquillità :p .

Andando al sodo: in una ipotetica pagina dove ho un elenco di record, una checkbox per ciascuno di questi per selezionare quelli da cancellare, ed un pulsante di conferma delle modifiche, io immetto tutti questi oggetti dentro una unica <form>.

Tipo, chiamandola pagina1.php:


<form name"form1" method="POST" action="pagina1.php">
<input type=checkbox name=check[] value="1">
<input type=text name="campo1">
<input type=checkbox name=check[] value="2">
<input type=text name="campo2">

<input type="submit" name="elimina_selezionati">
<input type="submit" name="update">
</form>


Lasciamo perdere la formattazione inesistente.
Io solitamente cosa faccio... essendo, come potete vedere, l'azione della forma la pagina stessa (pagina1.php), io scrivo in testa a questa stessa pagina un codice php del genere...


$fai_del_checkbox = $_POST['elimina_selezionati'];
$fai_update = $_POST['update'];

if ( !is_null($fai_update) )
{
$campo1 = $_POST["campo1"];
$campo2 = $_POST["campo2"];
// Gestisco i campi, magari facendo l'update su DB
}

if ( !is_null($fai_del_checkbox) )
{
$check = $_POST['check'];
foreach ($check as $id)
{
//Fai cancellazione du DB
}
}

// Poi qui ripeterò il corpo della pagina scritto sopra
<form name"form1" method="POST" action="pagina1.php">
<input type=checkbox name=check[] value="1">
<input type=text name="campo1">
<input type=checkbox name=check[] value="2">
..
..
</form>


Solitamente, se ho pulsanti associati riga-riga, mi setto il "value" del pulsante pari all'ID che mi interessa, così alla POST della form mi leggo l'ID del record che volevo trattare.
E così di solito imposto l'intera pagina, per ogni operazione che è possibile fare all'interno...
Scusate la lunghezza del post, e dello scarso valore nel contenuto...
Spero in una vostra piccola critica.
Grazie a tutti!

DarkMic
13-12-2005, 12:07
secondo me va benessimo.

piccola critica:

1 anzichè utilizzare is_null(), utilizza isset().
2 non fare $fai_del_checkbox = $_POST['elimina_selezionati'];
ma direttamente nell'if if isset($_POST[' ']

questo perchè se fai un error_reporting(15), ti darà messaggi di tipo notice (quindi non gravi) ma se dobbiamo essere critici ecco fatto

Nightingale
13-12-2005, 12:21
secondo me va benessimo.

piccola critica:

1 anzichè utilizzare is_null(), utilizza isset().
2 non fare
ma direttamente nell'if if isset($_POST[' ']

questo perchè se fai un error_reporting(15), ti darà messaggi di tipo notice (quindi non gravi) ma se dobbiamo essere critici ecco fatto

Ottimo! Grazie mille per la riposta, e per i consigli! ;)