ricavare informazioni sul visitatore, indirizzo IP, Browser, provenienza ect... e salvarle su un file di testo "controllo_sito.txt"
codice: <?Php //per evitare l'esecuzione di una riga basta commentarla ed inserire due slash prima del segno del dollaro. |
Pagina di accesso/login con il metodo cookie non necessita di database
In quest script ci serviamo del metodo "_POST" per verificare il valore delle variabili.
Definiamo il valore "demo" alle variabili $username e $password
lo script verifica se le variabili corrispondono o meno al valore da noi specificati.
Vediamo il codice:
| <? if ($_POST["login"] != "") { $username = $_POST["username"]; $password = $_POST["password"]; if ($username == "demo" && $password == "demo") { echo '<p align="center">Benvenuto!</p><br><br>'; echo '<p align="center"><a href=http://www.nomesito.com>ENTRA</a></p>'; } else { echo '<p align="center">Accesso Negato!<br> inserire nome utente e password validi</p>'; } } ?> |
Invia una email con php
|
// nel link ?riportato il codice intero <?php |
Pagina di login php con il metodo _POST e connessione al database Mysql
//creazione del form con i campi username e password <form action="login.php" method="post" name="login"> //creazione del file login.php e connessione al database Mysql <?php//eseguo la connessione al database $connection = mysql_connect( 'localhost', 'nomeutente', 'password') or die('Impossibile connettersi al server' ); mysql_select_db('database_name', $connection) or die(Errore! Connessione Fallita'); $username=mysql_real_escape_string($_POST['username']); //faccio l'escape dei caratteri dannosi $password=mysql_real_escape_string($_POST['password']); //ripeto l'escape dei caratteri dannosi //Seleziono ed Eseguo la query nella tabella utenti verificando se esiste l'username e password corrispondente $query = mysql_query("SELECT username, password FROM $tabreg WHERE username = '$username' AND password = '$password'"); while($row = mysql_fetch_array($query)) { $username = $row['username']; $password = $row['password']; } //se esegue la query entra nell'IF if(mysql_num_rows($result) == 1) { //metto l'username nella variabile di sessione "username" $_SESSION['username'] = $username; //Faccio il redirect nella pagine enter.php echo "<script> window.location = \"enter.php\" </script>"; } else { //Faccio il redirect nella pagine riprova.php echo "<script> window.location = \"riprova.php\" </script>"; } ?> |
|
<?php session_start(); //inizio la sessione $nome = $_POST[nome]; $cognome = $_POST[cognome]; $mess = $_POST['note']; $messaggio = str_replace("<br />","\n\n",$mess); //$allegato = $_POST['allegato']; $connection = mysql_connect( 'localhost', 'nomeutente', 'password') or die('Impossibile connettersi al server' ); mysql_select_db('database_name', $connection) or die(Errore! Connessione Fallita'); // settiamo alcune variabili coinvolte nello script: // verifichiamo che l'utente abbia selezionato un file /////////////////////////////////////////////////////////////////////////////////////////// //parametri di sessione $nome = $_SESSION['nome'];$cognome = $_SESSION['cognome']; $destinatario = "miaemail@runover.it"; //corpo email $mail_body = "- Dati account - Nome: $nome Cognome: $cognome // Processo di configurazione dell'email // [Destinatario, mittente, ecc] $mail_from = "miaemail@runover.it"; $oggetto = "allegato"; $intestazione .= "X-Priority: 3\r\n" ; //2 = urgente, 3 = normale, 4 = non urgente // Valorizzo le variabili relative all'allegato $allegato = $_FILES['allegato']['tmp_name']; $allegato_type = $_FILES['allegato']['type']; $allegato_name = $_FILES['allegato']['name']; // Creo 2 variabili che riempirò più avanti... $headers = "From: " . $mail_from; $msg = ""; // Verifico se il file è stato caricato correttamente via HTTP // In caso affermativo proseguo nel lavoro... if (is_uploaded_file($allegato)) { // Apro e leggo il file allegato $file = fopen($allegato,'rb'); $data = fread($file, filesize($allegato)); fclose($file); // Adatto il file al formato MIME base64 usando base64_encode $data = chunk_split(base64_encode($data)); // Genero il "separatore" // Serve per dividere, appunto, le varie parti del messaggio. // Nel nostro caso separerà la parte testuale dall'allegato $semi_rand = md5(time()); $mime_boundary = "==Multipart_Boundary_x{$semi_rand}x"; // Aggiungo le intestazioni necessarie per l'allegato $headers .= "\nMIME-Version: 1.0\n"; $headers .= "Content-Type: multipart/mixed;\n"; $headers .= " boundary=\"{$mime_boundary}\""; $headers .= 'Bcc: altraemail@runover.it' . "\r\n"; // Definisco il tipo di messaggio (MIME/multi-part) $msg .= "This is a multi-part message in MIME format.\n\n"; // Metto il separatore $msg .= "--{$mime_boundary}\n"; // Questa è la parte "testuale" del messaggio $msg .= "Content-Type: text/plain; charset=\"iso-8859-1\"\n"; $msg .= "Content-Transfer-Encoding: 7bit\n\n"; $msg .= $mail_body . "\n\n"; // Metto il separatore $msg .= "--{$mime_boundary}\n"; // Aggiungo l'allegato al messaggio $msg .= "Content-Disposition: attachment;\n"; $msg .= " filename=\"{$allegato_name}\"\n"; $msg .= "Content-Transfer-Encoding: base64\n\n"; $msg .= $data . "\n\n"; // chiudo con il separatore $msg .= "--{$mime_boundary}--\n"; } else { $msg = $messaggio; } // Invio la mail if (mail($destinatario, $oggetto, $msg, $headers)) { @move_uploaded_file($_FILES['allegato']['tmp_name'], '/upload/' . $_FILES['allegato']['name']); $allegato_name = $_FILES['allegato']['name']; # aggiorna dati al db $sqlcl = "UPDATE foto SET allegato = '$allegato_name' WHERE username= '$username"; mysql_query($sqlcl) or die('Errore! Operazione non valida'); echo "<script>window.location=home.php';</script>"; }else{ '<script type="text/javascript"> <!-- alert("Errore! \n messaggio NON inviato!"); window.open("riprova.php"); window.close(); // --> </script>'; exit; } } ?> |