Newsgroup: it.comp.www.php
Titolo: email

Ciao!
Qualcuno saprebbe scrivermi un framento di programma in php che mi permette
di ricevere una email ogni volta che viene vista una certa pagina web?
Grazie
ciao!

";
$subject ="Qualcuno ha visitato la pagina $pagina";
$header="From: $from\r\n";
$header.="To: $destinatario\r\n";
$header.="Return-Path: $from\r\n";
$header.="Reply-To: $from\r\n";
$header.="X-MimeOLE: Script avviso by FL\r\n";
$header.="MIME-Version: 1.0\r\n";
mail($destinatario, $subject, $message, $header);
?>
FL

 $pagina="nomepagina.php";
...
...
Ora ci provo...
grazie... molto gentile.
Ciao!

 ha scritto nel messaggio
news:c2hpj8$sal$1...@atlantis.cu.mi.it...

L'ho provato. Funziona!
Ma com'è che me ne arrivano due per ogni visita della pagina?
E poi...volendo inserire un testo nel mesaggio, qual è il nome della
variabile?
Grazie!
Ciao!!!

variabile?
$message
Ciao
Francesco
_____________________________________
http://www.altropc.it
 - Un altro PC è possibile!
Software libero, PHP, MySQL, Webdesign, Sicurezza, CMS, Tutorials
Per rispondere in e-mail togli NOSPAM 

 Francesco
Grazie
Ciao!

 di ricevere una email ogni volta che viene vista una certa pagina web?
Spero per te che la tua pagina non riceva troppe visite...
ghghgh

 ha scritto nel messaggio
news:ht23c.18676$O31.8...@news4.tin.it...

Lo spero anche io... e per due motivi... visto che sono pagine private
protette da password.

protette da password.
Non sarà il caso allora che l'email ti invii anche altre informazioni,
tipo l'indirizzo IP ed il browser dell'intruso???


 tipo l'indirizzo IP ed il browser dell'intruso???
Sì, infatti ce l'ho messo.
Il problema che avevo era quello del non conoscere i comandi per l'invio
delle email. Grazie a voi ho risolto.
Ci ho infilato dentro... indirizzo ip, browser, sistema operativo.
Non mi viene in mente nient'altro. Hai altre informazioni, tipo nome
dell'account che utilizza per la connessione(anche se sono quasi sicuro che
non si possa fare), ecc... ?
Grazie di nuovo.
Ciao!

non si possa fare), ecc... ?
Stavo pensando...ma come hai protetto queste pagine? A seconda della
risposta che dai tutto quello che hai fatto con l'invio della mail puň
essere inutile.
Ciao
Francesco
_____________________________________
http://www.altropc.it
 - Un altro PC č possibile!


 essere inutile.
Non mi ricordo come si chiama... se non mi sbaglio con le sessioni.
Inserisco la password. Se č esatta, il server mi manda il codice di quello
che mi interessa.
Ho sbagliato?

 Ho sbagliato?
Difficile dirlo. Se hai sbagliato probabilmente non te ne sei accorto visto
che forse stai usando codice non tuo (c'è quindi da chiedersi a che livello
sia la sicurezza di questa pagine... spero non abbia fatto un collage...).
Altrimenti sapresti su cosa hai basato il meccanismo di identificazione e di
gestione della sessione.
Byez
P.S. Magari se postassi il codice...

 
qualcosa come questo?
<?php
  $pagina=$_SERVER['PHP_SELF'];
  //dove vuoi spedire la mail
  $destinatario="
tuo...@tuodominio.org
";
  //indifferente
  $from="
pincop...@pincopallino.org
";
  /*soggetto della mail con il recupero del nome della pagina
richiamando la variabile $pagina
*/
  $subject ="Qualcuno ha visitato la pagina $pagina";
//*recupera l'indirizzo ip del visitatore con  $REMOTE_ADDR
  $message=" il suo indirizzo ip e':$REMOTE_ADDR\n proviene da : 
$HTTP_REFERER\n il suo browser e' $HTTP_USER_AGENT\n ";
  //intestazione degli header
  $header="From: $from\r\n";
  $header.="To: $destinatario\r\n";
  $header.="Return-Path: $from\r\n";
  $header.="Reply-To: $from\r\n";
  $header.="X-MimeOLE: \r\n";
  $header.="MIME-Version: 1.0\r\n";
//funzione mail
//mail($destinatario, $subject, $message, $header);
mail($destinatario, $subject, $message, $header);
?>
saluti
filippo

Ho sbagliato?
Se il controllo della password lo fanno le pagine in cui metti anche
l'invio della mail, ti viene inviata una mail anche se ipoteticamente
un utente arriva in quella pagina ma non riesce a entrare perché non
sa la password. Se ci dici qualcosa in più o posti del codice ci si
può esprimere meglio.
Ciao
Francesco
_____________________________________
http://www.altropc.it
 - Un altro PC è possibile!


Sì... c'ho messo un bel po' di cose.
Grazie!
Ciao!

 può esprimere meglio.
Ho incluso il file php che invia l'email nella parte della pagina che viene
inviata al client solo se la password è corretta.
Quindi anche la mail viene inviata solo se la password è corretta.
Ho fatto pure tutte le prove su me stesso... ed è tutto ok.
Sì, è vero che ho copiato un po' di pezzi qua e là, ma so come funzionano e
li ho assemblati bene.
Per ora è tutto ok... tranne quella cosa che non capisco... mi arrivano due
email per ogni visita. E' strano.
Il codice poi... è quello che mi avete incollato.
Boh!
Grazie.
Ciao!

 ha scritto nel messaggio
news:Ul93c.20723$O31.9...@news4.tin.it...

E' che non mi ricordo mai i nomi delle cose che faccio e che studio, ma per
fortuna so come funziona ciò che studio.
Sarebbe un casino postare il codice perché sono tutte inclusioni di piccoli
file php e non saprei da dove cominciare a incollarli qui. Comunque è tutto
ok.
Grazie.
Ciao!

 
allora condividile con noi :-)
share the code
filippo

 filippo
common.php
<?
$password = "miapassword"; // valore del codice di accesso riservato
/* La funzione che visualizzerà l'errore */
function errore($msg) {
  echo "<script language=\"JavaScript\" type=\"text/javascript\">";
  echo "alert('$msg');";
  echo "history.go(-1);";
  echo "</script>";
  die($msg);
}
?>
-----------------------------------------------------------
accesso.php
<?
include "./common.php"; // includo il file comune a tutti gli script
if(isset($userpass)) { // se l'utente ha inviato il modulo
/* Se la password è sbagliata mostro un messaggio di errore */
if($userpass != $password) errore("Password errata");
session_start(); // altrimenti inizializzo la sessione
session_register('registered'); // registrando la variabile registered
}
/* se è registrata la variabile, l'utente è registrato (quindi inizializzo
logged) */
if(session_is_registered('registered')) $logged = 1;
?>
<html>
<head><title>Pagina per l'accesso alle aree riservate</title><meta
http-equiv="Content-Type" content="text/html; charset=iso-8859-1"><style
type="text/css">
<!--
body {
 background-image: url(bg.gif);
}
.Stile1 {color: #FF0000}
-->
</style></head>
<body>
<h1 align="center" class="Stile1">&nbsp;</h1>
<h1 align="center" class="Stile1">&nbsp;</h1>
<h1 align="center" class="Stile1">Accesso alle aree riservate</h1>
<?
if($logged) { // se è registrato mostro i link alle pagine riservate
?>
<div align="center"><br>
    <br>
    <a href="index.php">ENTRA</a><br>
    <br>
  <?
} else { // altrimenti mostro il modulo per il login
?>
</div>
<form method="POST" action="<?= $PHP_SELF ?>">
  <div align="center"><span class="Stile1">Password:</span>    <input
type="password" name="userpass" size="20">
    <br>
    <input type="submit" value="Accedi">
  </div>
</form>
<div align="center">
  <?
}
?>
</div>
</body>
</html>
-----------------------------------------------------------
index.php
<?
  include "./common.php";
  session_start();
  /* Se non risulta registrato richiamo la funzione errore (definita in
common.php) */
  if(!session_is_registered('registered'))
    errore("Errore: non risulti un utente registrato! Effettua il log-in");
?>
<html>
<head>
<title>Documento senza titolo</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<style type="text/css">
<!--
body {
 background-image: url(bg.gif);
}
.Stile1 {
 font-size: 24px;
 font-style: italic;
 font-weight: bold;
 color: #0000FF;
}
-->
</style></head>
<body>
<?
include("mail.php");
include ("statistiche.php");
?>
<p align="center"><a href="../index2.php">home</a></p>
<p align="center"><a href="index4.php" target="_blank">pagina1</a></p>
<p align="center"><a href="index5.php" target="_blank">pagina2</a></p>
</body>
</html>
----------------------------------------------------------------------
mail.php
<?
// dati client
$ip = getenv("REMOTE_ADDR");   //IP
$host = gethostbyaddr($ip);   //Host dell' IP
$port = getenv("REMOTE_PORT");  //Porta
$comp = getenv("HTTP_USER_AGENT");  //Altre caratteristiche del visitatore
$date = date("d/m/Y");   //data
$time = date("h:i:s a");  //ora
$cookie = $HTTP_COOKIE_VARS;
$pagina=$_SERVER['PHP_SELF'];
$destinatario="
miae...@miaemail.it
";
$from="Roberto <
miae...@miaemail.it
";
$subject ="Qualcuno ha visitato la pagina $pagina";
$message="$ip \n $host  \n $HTTP_REFERER \n $port  \n  $comp  \n  $date
$time";
$header="From: $from\r\n";
$header.="To: $destinatario\r\n";
$header.="Return-Path: $from\r\n";
$header.="Reply-To: $from\r\n";
$header.="X-MimeOLE: Script avviso by R\r\n";
$header.="MIME-Version: 1.0\r\n";
mail($destinatario, $subject, $message, $header);
//nelle pagine da tenere sotto controllo inserire questa riga:
//
//include("mail.php");
?>
------------------------------------------------------------
statistiche.php
<?php
//nome del file di testo su cui scrivere
$statistiche = "statistiche.txt";
               function statistic($statistiche) {
// dati client
$ip = getenv("REMOTE_ADDR");   //IP
$host = gethostbyaddr($ip);   //Host dell' IP
$port = getenv("REMOTE_PORT");  //Porta
$comp = getenv("HTTP_USER_AGENT");  //Altre caratteristiche del visitatore
$date = date("d/m/Y");   //data
$time = date("h:i:s a");  //ora
$cookie = $HTTP_COOKIE_VARS;
// dati server
$amministratore = getenv("SERVER_ADMIN");
$sistema = getenv("MACHTYPE");
$software = getenv("SERVER_SOFTWARE");
$s_host = getenv("HOSTNAME");
$server = getenv("HTTP_HOST");
$porta = getenv("SERVER_PORT");
$protocollo = getenv("SERVER_PROTOCOL");
// "a" significa:
// il file viene creato se non esiste;
// viene aperto in scrittura con inserimenti solo in fondo al file
// potevo usare anche "r" o "w"
// il "+" permette l'aggiornamento del file
   $aprif = fopen($statistiche,"a+");
// scrive sul file statistiche.txt
   fputs($aprif,"\n -  $date   $time     $host   $ip   $port   $comp");
   fputs($aprif,"    $amministratore   $sistema    $software    $s_host
$server    $porta    $protocollo  ");
   fputs($aprif,"\n $cookie");
// stampa su explorer
//   print("-  $date   $time     $host   $ip    $port   $comp
$amministratore   $sistema    $software    $s_host   $server    $porta
$protocollo");
// chiude il file
   fclose($aprif);
// fine della funzione
               }
// esegue la funzione scritta prima
            statistic($statistiche);
?>
ciao!

 </html>
esattamente quello che cercavo sulle sessioni
saluti e condividi sempre
filippo


me lo potevi dě prima!
ciao!