GUIDA Script - Form

ertrophy

Nuovo Utente
63
6
CPU
intet i7 870
HDD
1tb
RAM
corsair 8gb xms3
GPU
asus nvidia 470
Monitor
Samsung
PSU
enermax
Case
coolermaster elite
OS
wind7 / Linux
Buona sera a tutti, l'argomento che andremo a trattare oggi a grande richiesta è "come creare ed utilizzare un form per la ricezione di informazioni sulla nostra mail":ok:
Cominciamo il nostro lavoro organizzando i diversi file che andremo a scrivere, per questo form utilizzeremo 3 file in php, li chiamerà index.php/confing.php/mailsend.php (premetto che il form di esempio che mostro ritrae un form di invio informazioni per l'iscrizione a gare di golf)

Iniziamo creando il nostro file di configurazione(confing.php), qui andreamo ad inserire le variabili principali, ovvero la mail che ricevera le informazioni, il titolo e altri dati necessari al form

PHP:
<?php
$email = 'info@mail.it'; 
$title = 'Iscrizione gara';
$urlh = getenv(HTTP_HOST);
$siteurl = "http://$urlh";
?>

Ora costruiamo la nostra pagina principale (index.php) , per prima cosa includiamo il nostro file di configurazione
PHP:
<?php
include('config.php');
?>

Il passo seguente è l'inizo della creazione del nostro form, ovviamente curiamo i dettagli e inseriamo i titolo della nostra pagina gia salvato nella variabile $title (ricordiamoci che siamo in php :) ) , soffermiamoci poi sulle specifiche del form name="formcheck" action="mailsend.php" (che andreamo a creare più tardi questo nome non è obbligatorio potete cambiarlo quando volete) e la parte più importante method="POST"
PHP:
<?php

        echo '
<html>
<head>
<h2><?php echo $title; ?></h2>
</head>
<body>
<b><p><br>Iscrizione alle gare</p>
<form name="formcheck" action="mailsend.php" method="POST">

Ora iniziamo a creare gli input , quindi creeremo caselle di testo dove andranno inseriti nome, cognome, email, hcp, circolo di appartenenza, tee time preferito e delle note, inoltre un menu a tendina con il nome della gara , e opzioni per decidere la categoria di appartenenza
PHP:
<strong>Nome</strong></br>
        <input type=text style="font-size: 11px; font-family: tahoma,arial; font-weight: bold; color: #336699; BORDER: #000000 1px line ; BACKGROUND-COLOR: #F8F8F8" name="name" size="45"></br>
        <strong>Cognome</strong></br>
        <input type=text style="font-size: 11px; font-family: tahoma,arial; font-weight: bold; color: #336699; BORDER: #000000 1px line ; BACKGROUND-COLOR: #F8F8F8" name="cognome" size="45"></br>
        <strong>Email</strong></br>
        <input type=text style="font-size: 11px; font-family: tahoma,arial; font-weight: bold; color: #336699; BORDER: #000000 1px line ; BACKGROUND-COLOR: #F8F8F8" name="emaile" size="45"></br>
        <strong>HCP</strong></br>
        <input type=text style="font-size: 11px; font-family: tahoma,arial; font-weight: bold; color: #336699; BORDER: #000000 1px line ; BACKGROUND-COLOR: #F8F8F8" name="hcp" size="45"></br>
        <strong>Circolo appartenenza</strong></br>
        <input type=text style="font-size: 11px; font-family: tahoma,arial; font-weight: bold; color: #336699; BORDER: #000000 1px line ; BACKGROUND-COLOR: #F8F8F8" name="circolo" size="45"></br>
        <strong>Gara</strong></br>
        <select name="gara">
                <option value="sgiovanni">sgiovanni</option>
                <option value="sstefano">sstefano</option>
            </select></br></br>
        <strong>Categoria</strong></br>
        <input type=radio style="font-size: 11px; font-family: tahoma,arial; font-weight: bold; color: #336699; BORDER: #000000 1px line ; BACKGROUND-COLOR: #F8F8F8" name="categoria" size="45" value="Promotori">Promotori</br>        
        <input type=radio style="font-size: 11px; font-family: tahoma,arial; font-weight: bold; color: #336699; BORDER: #000000 1px line ; BACKGROUND-COLOR: #F8F8F8" name="categoria" size="45" value="Amici">Amici</br>
       </br>
        <strong>Tee time preferito</strong></br>
        <input type=text style="font-size: 11px; font-family: tahoma,arial; font-weight: bold; color: #336699; BORDER: #000000 1px line ; BACKGROUND-COLOR: #F8F8F8" name="ritotee" size="45"></br>
<strong>Note</strong><br/>
<textarea name="comments" style="font-size: 11px; font-family: tahoma,arial; font-weight: bold; color: #336699; BORDER: #000000 1px line ; BACKGROUND-COLOR: #F8F8F8"  rows="5" cols="47"></textarea></br>

concludiamo creando due pulsanti , uno per l'invio delle informazioni e uno per resettare il form

PHP:
<input type="submit" name="Submit" value="Submit">&nbsp;<input type="reset" name="Reset" value="Reset">

</form>
<br>
</font>
</body>
</html><BR>
';
?>

Il risultato completo della nostra index.php sarà cosi
PHP:
<?php
include('config.php');
?>

<?php

        echo '
<html>
<head>
<h2><?php echo $title; ?></h2>
</head>
<body>
<b><p><br>Iscrizione alle gare</p>
<form name="formcheck" action="mailsend.php" method="POST">
<strong>Nome</strong></br>
        <input type=text style="font-size: 11px; font-family: tahoma,arial; font-weight: bold; color: #336699; BORDER: #000000 1px line ; BACKGROUND-COLOR: #F8F8F8" name="name" size="45"></br>
        <strong>Cognome</strong></br>
        <input type=text style="font-size: 11px; font-family: tahoma,arial; font-weight: bold; color: #336699; BORDER: #000000 1px line ; BACKGROUND-COLOR: #F8F8F8" name="cognome" size="45"></br>
        <strong>Email</strong></br>
        <input type=text style="font-size: 11px; font-family: tahoma,arial; font-weight: bold; color: #336699; BORDER: #000000 1px line ; BACKGROUND-COLOR: #F8F8F8" name="emaile" size="45"></br>
        <strong>HCP</strong></br>
        <input type=text style="font-size: 11px; font-family: tahoma,arial; font-weight: bold; color: #336699; BORDER: #000000 1px line ; BACKGROUND-COLOR: #F8F8F8" name="hcp" size="45"></br>
        <strong>Circolo appartenenza</strong></br>
        <input type=text style="font-size: 11px; font-family: tahoma,arial; font-weight: bold; color: #336699; BORDER: #000000 1px line ; BACKGROUND-COLOR: #F8F8F8" name="circolo" size="45"></br>
        <strong>Gara</strong></br>
        <select name="gara">
                <option value="magara">Margara</option>
                <option value="Castelgandolfo">Castelgandolfo</option>
            </select></br></br>
        <strong>Categoria</strong></br>
        <input type=radio style="font-size: 11px; font-family: tahoma,arial; font-weight: bold; color: #336699; BORDER: #000000 1px line ; BACKGROUND-COLOR: #F8F8F8" name="categoria" size="45" value="Promotori">Promotori</br>        
        <input type=radio style="font-size: 11px; font-family: tahoma,arial; font-weight: bold; color: #336699; BORDER: #000000 1px line ; BACKGROUND-COLOR: #F8F8F8" name="categoria" size="45" value="Amici">Amici</br>
       </br>
        <strong>Tee time preferito</strong></br>
        <input type=text style="font-size: 11px; font-family: tahoma,arial; font-weight: bold; color: #336699; BORDER: #000000 1px line ; BACKGROUND-COLOR: #F8F8F8" name="ritotee" size="45"></br>
<strong>Note</strong><br/>
<textarea name="comments" style="font-size: 11px; font-family: tahoma,arial; font-weight: bold; color: #336699; BORDER: #000000 1px line ; BACKGROUND-COLOR: #F8F8F8"  rows="5" cols="47"></textarea></br>

  <input type="submit" name="Submit" value="Submit">&nbsp;<input type="reset" name="Reset" value="Reset">

</form>
<br>
</font>
</body>
</html><BR>
';
?>

Ora creiamo l'ultima pagina necessaria ovvero mailsend.php, come prima cosa decidiamo gli elementi obbligatori del form e se cosi non fosse facciamo apparire un messaggio che esprima l'obbligo di inserire i dati e un link a tornare indietro.
PHP:
<?php

if (!$HTTP_POST_VARS["name"] || 
!$HTTP_POST_VARS["cognome"] || 
!$HTTP_POST_VARS["emaile"] || 
!$HTTP_POST_VARS["hcp"] || 
!$HTTP_POST_VARS["circolo"] || 
!$HTTP_POST_VARS["ritotee"] || 
!$HTTP_POST_VARS["gara"] || 
!$HTTP_POST_VARS["categoria"]) 
{ 
echo "Per favore completa i campi obbligatori.";
echo '<a href="javascript:history.go(-1)">Torna indietro</a>'; 
exit; 
}
?>

Come ultima cosa creiamo (sempre includendo il nostro config.php) l'elenco delle nostre variabili compreso di indirizzo ip, data e altro utile a noi (a nostra discrezione :) ) soffermiamoci guardando la variabile $bodys che sarà il nostro messaggio stampato nella mail, infatti contiene tutte le variabile che ci servono
PHP:
<?php
include('config.php');
$time = date ("h:i A"); 
$date = date ("l, F jS, Y");
$urlh = getenv(HTTP_HOST);
$url = "http://$urlh";
$IP = $_SERVER['REMOTE_ADDR'];
$name = $_POST['name']; 
$cognome = $_POST['cognome']; 
$hcp = $_POST['hcp']; 
$circolo = $_POST['circolo'];
$gara = $_POST['gara']; 
$categoria = $_POST['categoria']; 
$ritotee = $_POST['ritotee']; 
$emaile = $_POST['emaile'];
$comments = $_POST['comments'];
$headers = 'From: System Admin <noreply@domain.com>';
$email;
$subject = "Iscrizione gara \n$gara";
$body = $_POST['body'];
$bodys = "Messaggio:\nQuesto form è stato inviato dal sito $date alle $time con l'Indirizzo IP Address.$IP \n Nome: $name \nCognome: $cognome \nEmail: $emaile \nHCP: $hcp \nCircolo di appartenenza: $circolo \nNome gara: $gara \nCategoria $categoria \nTee time preferito: $ritotee \nUlteriori note:$comments"; 
$IP = $_SERVER['REMOTE_ADDR'];
$body = $body . $bodys;
mail($email, $subject, $body, "From: $email");
?>

il risultato è questo
PHP:
<?php

if (!$HTTP_POST_VARS["name"] || 
!$HTTP_POST_VARS["cognome"] || 
!$HTTP_POST_VARS["emaile"] || 
!$HTTP_POST_VARS["hcp"] || 
!$HTTP_POST_VARS["circolo"] || 
!$HTTP_POST_VARS["ritotee"] || 
!$HTTP_POST_VARS["gara"] || 
!$HTTP_POST_VARS["categoria"]) 
{ 
echo "Per favore completa i campi obbligatori.";
echo '<a href="javascript:history.go(-1)">Torna indietro</a>'; 
exit; 
}
?>
<?php
include('config.php');
$time = date ("h:i A"); 
$date = date ("l, F jS, Y");
$urlh = getenv(HTTP_HOST);
$url = "http://$urlh";
$IP = $_SERVER['REMOTE_ADDR'];
$name = $_POST['name']; 
$cognome = $_POST['cognome']; 
$hcp = $_POST['hcp']; 
$circolo = $_POST['circolo'];
$gara = $_POST['gara']; 
$categoria = $_POST['categoria']; 
$ritotee = $_POST['ritotee']; 
$emaile = $_POST['emaile'];
$comments = $_POST['comments'];
$headers = 'From: System Admin <noreply@domain.com>';
$email;
$subject = "Iscrizione gara \n$gara";
$body = $_POST['body'];
$bodys = "Messaggio:\nQuesto form è stato inviato dal sito $date alle $time con l'Indirizzo IP Address.$IP \n Nome: $name \nCognome: $cognome \nEmail: $emaile \nHCP: $hcp \nCircolo di appartenenza: $circolo \nNome gara: $gara \nCategoria $categoria \nTee time preferito: $ritotee \nUlteriori note:$comments"; 
$IP = $_SERVER['REMOTE_ADDR'];
$body = $body . $bodys;
mail($email, $subject, $body, "From: $email");
?>


questo form è molto semplice, ed è facilmente personalizzabile, spero sia piaciuto e spero di non aver commesso errori :) :ok:
 

vbs

Utente Attivo
652
267
Non voglio diventare il tuo peggiore incubo :) ... però l'index.php corretto sarebbe:
PHP:
<?php
include('config.php');
?>

<?php

        echo '
<html>
<head>
<title>' . $title . '</title>
</head>
<body>
<div style="font-weight:bold; padding:8px;">Iscrizione alle gare</div>
<form name="formcheck" action="mailsend.php" method="post">
<strong>Nome</strong><br />
        <input type="text" style="font-size: 11px; font-family: tahoma,arial; font-weight: bold; color: [URL=http://www.tomshw.it/forum/usertag.php?do=list&action=hash&hash=336699]#336699[/URL] border: #000000 1px line ; background-color: #F8F8F8" name="name" size="45" /><br />
        <strong>Cognome</strong><br />
        <input type="text" style="font-size: 11px; font-family: tahoma,arial; font-weight: bold; color: [URL=http://www.tomshw.it/forum/usertag.php?do=list&action=hash&hash=336699]#336699[/URL] border: #000000 1px line ; background-color: #F8F8F8" name="cognome" size="45" /><br />
        <strong>Email</strong></br>
        <input type="text" style="font-size: 11px; font-family: tahoma,arial; font-weight: bold; color: [URL=http://www.tomshw.it/forum/usertag.php?do=list&action=hash&hash=336699]#336699[/URL] border: #000000 1px line ; background-color: #F8F8F8" name="emaile" size="45" /><br />
        <strong>HCP</strong><br />
        <input type="text" style="font-size: 11px; font-family: tahoma,arial; font-weight: bold; color: [URL=http://www.tomshw.it/forum/usertag.php?do=list&action=hash&hash=336699]#336699[/URL] border: #000000 1px line ; background-color: #F8F8F8" name="hcp" size="45" /><br />
        <strong>Circolo appartenenza</strong><br />
        <input type="text" style="font-size: 11px; font-family: tahoma,arial; font-weight: bold; color: [URL=http://www.tomshw.it/forum/usertag.php?do=list&action=hash&hash=336699]#336699[/URL] border: #000000 1px line ; background-color: #F8F8F8" name="circolo" size="45" /><br />
        <strong>Gara</strong><br />
        <select name="gara">
                <option value="magara">Margara</option>
                <option value="Castelgandolfo">Castelgandolfo</option>
            </select><br /><br />
        <strong>Categoria</strong><br />
        <input type="radio" style="font-size: 11px; font-family: tahoma,arial; font-weight: bold; color: [URL=http://www.tomshw.it/forum/usertag.php?do=list&action=hash&hash=336699]#336699[/URL] border: #000000 1px line ; background-color: #F8F8F8" name="categoria" size="45" value="Promotori" />Promotori<br />        
        <input type="radio" style="font-size: 11px; font-family: tahoma,arial; font-weight: bold; color: [URL=http://www.tomshw.it/forum/usertag.php?do=list&action=hash&hash=336699]#336699[/URL] border: #000000 1px line ; background-color: #F8F8F8" name="categoria" size="45" value="Amici" />Amici<br />
       <br />
        <strong>Tee time preferito</strong><br />
        <input type="text" style="font-size: 11px; font-family: tahoma,arial; font-weight: bold; color: [URL=http://www.tomshw.it/forum/usertag.php?do=list&action=hash&hash=336699]#336699[/URL] border: #000000 1px line ; background-color: #F8F8F8" name="ritotee" size="45" /><br />
<strong>Note</strong><br />
<textarea name="comments" style="font-size: 11px; font-family: tahoma,arial; font-weight: bold; color: [URL=http://www.tomshw.it/forum/usertag.php?do=list&action=hash&hash=336699]#336699[/URL] border: #000000 1px line ; background-color: #F8F8F8" rows="5" cols="47"></textarea><br />

  <input type="submit" name="Submit" value="Submit" />&nbsp;<input type="reset" name="Reset" value="Reset" />

</form>
<br />
</body>
</html>
';
?>

Ed ora spiego:
- <br /> invece di <br> o </br> o <br/>
- type="text" invece type=text o simili
- non esiste
<h2><?php echo $title; ?></h2>
in head, semmai <title>' . $title . '</title> quindi ci sono 2 errori, ovvero <h2> è un tag che sta nel <body> e non è contemplato come permesso in head, il secondo l'echo $title viene trattato come semplice testo e non come comando
- dopo </html> non esiste più nulla, quindi il<BR> finale è sbagliato 2 volte

Ovviamente come sempre le mie critiche vogliono essere costruttive ;)
 

ertrophy

Nuovo Utente
63
6
CPU
intet i7 870
HDD
1tb
RAM
corsair 8gb xms3
GPU
asus nvidia 470
Monitor
Samsung
PSU
enermax
Case
coolermaster elite
OS
wind7 / Linux
Fai bene a scrivere :) vuol dire che ciò che scrivo interessa, gli errori probabilmente li ho commessi scrivendo con troppa fretta a forza di parlare di titoli della pagina l'ho trattato come fosse testo normale mi spiego meglio nel codice originale <h2><?php echo $title; ?></h2> lo ho usato per scrivere in body il titolo della pagina (graficamente parlando) in più la stessa variabile l'ho usata per il <title> probabilmente li ho invertiti per la fretta anche perchè mi interessava il form dal punto di vista del codice e non dal punto di vista grafico quindi riscrivendo velocemente tutto ho invertito :P per quanto riguarda il <BR> finale preferisco chiamarlo "una cosa senza senso" anche perchè il form è perfettamente funzionante, comunque queste guide servono per imparare, e la perfezione è richiesta :) quindi ti ringrazio dei tuoi interventi:)
 

vbs

Utente Attivo
652
267
Fai bene a scrivere :) vuol dire che ciò che scrivo interessa, gli errori probabilmente li ho commessi scrivendo con troppa fretta a forza di parlare di titoli della pagina l'ho trattato come fosse testo normale mi spiego meglio nel codice originale <h2><?php echo $title; ?></h2> lo ho usato per scrivere in body il titolo della pagina (graficamente parlando) in più la stessa variabile l'ho usata per il <title> probabilmente li ho invertiti per la fretta anche perchè mi interessava il form dal punto di vista del codice e non dal punto di vista grafico quindi riscrivendo velocemente tutto ho invertito :P per quanto riguarda il <BR> finale preferisco chiamarlo "una cosa senza senso" anche perchè il form è perfettamente funzionante, comunque queste guide servono per imparare, e la perfezione è richiesta :) quindi ti ringrazio dei tuoi interventi:)

Non ti preoccupare ;)

Più che altro i miei interventi dovrebbero essere visti come una puntualizzazione di certi errori comuni che sono da evitare, così chi legge potrebbe farsi una "scuola" di quello che non si deve fare :)

Mi ero fermato solo su index.php, ma se andiamo avanti anche su mailsend.php ci sarebbe da ottimizzare qualche cosina...

Innanzitutto dobbiamo essere sicuri che è stato premuto "Submit" e quindi aggiungiamo un if...else per evitare che la mail venga inviata accidentalmente alla visita di qualche bot sulla pagina mailsend.php. Poi cambiamo $HTTP_POST_VARS in $_POST in quanto la prima variabile è diventata obsoleta non ricordo più da quale versione php in poi (non voglio dire una castroneria,ma mi pare che dalla >4.3 in poi). La cosa diventa identica anche per $HTTP_GET_VARS -> $_GET ed infine consiglio l'uso di $_REQUEST che racchiude $_POST, $_GET e $_COOKIE, ma si deve stare molto attenti a non usare lo stesso nome per due variabili distinte (es. $_POST['nome'] e $_GET['nome'])... cosa che potrebbe succedere quando si lavora su progetti di una certa consistenza nei quali si devono gestire un casino di variabili :)

PHP:
<?php

if ((isset($_POST['submit']))&&($_POST['submit']=='Submit'){



if (!$_POST["name"] || 
!$_POST["cognome"] || 
!$_POST["emaile"] || 
!$_POST["hcp"] || 
!$_POST["circolo"] || 
!$_POST["ritotee"] || 
!$_POST["gara"] || 
!$_POST["categoria"]) 
{ 
echo "Per favore completa i campi obbligatori.";
echo '<a href="javascript:history.go(-1)">Torna indietro</a>'; 
exit; 
}

include('config.php');
$time = date ("h:i A"); 
$date = date ("l, F jS, Y");
$urlh = getenv(HTTP_HOST);
$url = "http://$urlh";
$IP = $_SERVER['REMOTE_ADDR'];
$name = $_POST['name']; 
$cognome = $_POST['cognome']; 
$hcp = $_POST['hcp']; 
$circolo = $_POST['circolo'];
$gara = $_POST['gara']; 
$categoria = $_POST['categoria']; 
$ritotee = $_POST['ritotee']; 
$emaile = $_POST['emaile'];
$comments = $_POST['comments'];
$headers = 'From: System Admin <noreply@domain.com>';
$email;
$subject = "Iscrizione gara \n$gara";
$body = $_POST['body'];
$bodys = "Messaggio:\nQuesto form è stato inviato dal sito $date alle $time con l'Indirizzo IP Address.$IP \n Nome: $name \nCognome: $cognome \nEmail: $emaile \nHCP: $hcp \nCircolo di appartenenza: $circolo \nNome gara: $gara \nCategoria $categoria \nTee time preferito: $ritotee \nUlteriori note:$comments"; 
$IP = $_SERVER['REMOTE_ADDR'];
$body = $body . $bodys;
mail($email, $subject, $body, "From: $email");

} else {
header("Location: index.php"); // reindirizza sulla pagina del form per completare campi e premi Submit oppure vai alla pagina di errore submit non premuto (invece index.php si crea un error.php)
}

?>

Spero sia stato abbastanza chiaro nel spiegare la mia mente contorta :D
 

ertrophy

Nuovo Utente
63
6
CPU
intet i7 870
HDD
1tb
RAM
corsair 8gb xms3
GPU
asus nvidia 470
Monitor
Samsung
PSU
enermax
Case
coolermaster elite
OS
wind7 / Linux
ottimo miglioramento dello script :ok:
 

signore del tempo

Utente Èlite
3,228
491
CPU
Intel Core i5 4670K
Scheda Madre
Asus Z87-Plus
HDD
WD Caviar Green 500GB
RAM
G.Skill Ares 2x4GB 1600MHz
GPU
Sapphire 7850 1GB @ 1050MHz
Audio
Integrata
Monitor
Acer V193w
PSU
XFX ProSeries 550W Core Edition
Case
CM HAF 912 plus
OS
ArchLinux + KDE - Windows 10
Per il controllo del form, e la sua convalida, è meglio eseguire questa operazione nel client stesso. Si fa più molto più presto, e si scrive anche meno codice lato server (che non avrà mai la potenza di un linguaggio client-side, come JavaScript).
Magari il tutto con una richiesta AJAX, ed il form di registrazione sarà completo ed efficace.
E' anche vero che JavaScript può essere disabilitato, ma si fa presto ad ovviare.
 

vbs

Utente Attivo
652
267
Per il controllo del form, e la sua convalida, è meglio eseguire questa operazione nel client stesso. Si fa più molto più presto, e si scrive anche meno codice lato server (che non avrà mai la potenza di un linguaggio client-side, come JavaScript).
Magari il tutto con una richiesta AJAX, ed il form di registrazione sarà completo ed efficace.
E' anche vero che JavaScript può essere disabilitato, ma si fa presto ad ovviare.

In un certo senso hai ragione, però già l'uso di Ajax implica anche una parte server-side... Ci sono dei progetti nei quali è meglio usare la verifica solamente lato server e niente client, così un possibile malintenzionato non riesce a capire i processi che avvengono dietro ad una pagina (ricordo che l'uso di javascript implica anche la possibilità che i .js possano essere consultati da chiunque).

Il fatto di fare la verifica minima sulle variabili in php ( if (isset($_POST[submit])) { //do something} else {//redirect} ) ha il suo perché in mailsend.php in quanto quel file -nella sua prima versione- può essere accessibile a tutti e quindi ad un accesso comune parte una mail (anche senza inserire variabili). Ovviamente ci sarebe da inserire anche una funzione che "sanitizza" le variabili onde evitare l'iniezione di codice maligno (es eval() come la più semplice) oppure nel caso in cui si usano le variabili con scopo di interrogazione database, evitare il sql injection...

In conclusione, per la sicurezza di un qualunque sito (tranne se interamente in html), è sempre necessario che avvenga un controllo anche lato server (php, asp ecc ecc..) e non solo lato client (.js)

;)
 

signore del tempo

Utente Èlite
3,228
491
CPU
Intel Core i5 4670K
Scheda Madre
Asus Z87-Plus
HDD
WD Caviar Green 500GB
RAM
G.Skill Ares 2x4GB 1600MHz
GPU
Sapphire 7850 1GB @ 1050MHz
Audio
Integrata
Monitor
Acer V193w
PSU
XFX ProSeries 550W Core Edition
Case
CM HAF 912 plus
OS
ArchLinux + KDE - Windows 10
Il bello del client, è che il tuo progetto funziona anche in locale. Senza bisogno di server.
Certo, ogni sito per essere online, necessita di un server, e nella maggior parte vi è installato php sotto linux, ma questo è un altro discorso.
Ho sempre affermato che una buona comunicazione client/server lasciando i relativi ruoli al relativo linguaggio, dia ottimi frutti.
Hai parlato di injection, funzione eval: c'è anche in js, meglio eseguire li il controllo.
 

Entra

oppure Accedi utilizzando
Discord Ufficiale Entra ora!

Discussioni Simili