inserire le emailnel db

salve ragazzi io disturbo sempre ma questa volta con un altro problema  io  voglio salvare tutte leemailinviatedalsito neldbadessohoutilizzato un form un files mailform.php e  config.php  pero non riesco a capire perche ne mi salva le email nel db ne invia a me ilmess ne parte il messaggiodi risposta automatica postoilcod

<?  
include 'config.php';
$adminaddress = "info@xxxxxxxx.com"; 
$siteaddress ="http://www.xxxxxxxx.com"; 
$sitename = "xxxxxxxx.com"; 


//No need to change anything below ... 
// Gets the date and time from your server
$date = date("m/d/Y H:i:s");

// Gets the IP Address
if ($REMOTE_ADDR == "") $ip = "no ip";
else $ip = getHostByAddr($REMOTE_ADDR);

// Gets the POST Headers - the Flash variables
$action = $HTTP_POST_VARS['action'] ;
$email = $HTTP_POST_VARS['email'] ;
$name = $HTTP_POST_VARS['name'] ;
$cognome = $HTTP_POST_VARS['cognome'] ;
$comments = $HTTP_POST_VARS['comments'] ;
$telefono = $HTTP_POST_VARS['telefono'] ;
$oggetto = $HTTP_POST_VARS['oggetto'] ;

//Process the form data!
// and send the information collected in the Flash form to Your nominated email address

if ($action == "send") 
{ 
//Innanzitutto controlliamo la var.le name: 
$controllo = check_email($email); 

if ($controllo != "OK") 
{ 
echo $controllo; 

//Qui potresti anche far visualizzare una cosa del genere: 
echo "<BR><A HREF=\"http://www.marikweb.com/homeita/\">Ritorna alla registrazione</A>"; 
} 
else 
{ 
//Ora inseriamo i dati nel DB. 
//Ovviamente devi creare una tabella in cui inserire i dati ke passi con il post. 


$link_db = mysql_connect($CONFIG['host'],$CONFIG['user'],$CONFIG['pass']); 
mysql_select_db($CONFIG['dbname']); 
$sql_insert = "INSERT INTO contact (name,cognome,email,telefono,oggetto,comments) VALUES('$name','$cognome','$email','$telefono','$oggetto','$comments')"; 

if (mysql_query($sql_insert))
{ 
echo "OK RIGA INSERITA <br />";
} 
else
{
die(mysql_error());
} 

mysql_close($link_db); 



   //
   mail ("$adminaddress","informazioni",
   "Il visitatore ha lasciato le seguenti informazioni \n
   Name: $name 
   Email: $email\n
   Telefono: $telefono 
   Messaggio:
   ------------------------------
   $comments
   
   Logged Info :
   ------------------------------
   Using: $HTTP_USER_AGENT
   Hostname: $ip
   IP address: $REMOTE_ADDR
   Date/Time:  $date","FROM:$email" ) ; 
   
   //This sends a confirmation to your visitor
   mail ("$email","Re:", 
   "Salve $name,\n
abbiamo ricevuto il suo messaggio e presto sarà contattato.\n
    Saluti dallo Staff di $sitename 
   By
   $siteaddress","FROM:$adminaddress ") ; 
   
   //Confirmation is sent back to the Flash form that the process is complete
   $sendresult = "Thank you. You will receive a confirmation email shortly.";
   $send_answer = "answer=";
   $send_answer .= rawurlencode($sendresult);
   echo $send_answer;
} 


} 
?>

config.php

<?php
$CONFIG['host'] = "localhost";
$CONFIG['user'] = "rocco";
$CONFIG['pass'] = "maurizio";
$CONFIG['dbname'] = "user35512_7777";

$CONFIG['expire'] = 60;
$CONFIG['regexpire'] = 24; //in ore
$CONFIG['expire'] = 60;
$CONFIG['regexpire'] = 24; //in ore

$CONFIG['check_table'] = array(
"name" => "check_global",
"email" => "check_global"
);
function check_email($value)
{
global $CONFIG;

$value = trim($value);

if (($value == ""))
{
echo"Il campo non può essere lasciato vuoto";
}
else{
$query = @mysql_query("SELECT id FROM contact WHERE email='$value'")or die("Errore nella query");


if (@mysql_num_rows($query) != 0) return "Email già utilizzata";
else return"OK";
}
}
//--------------
define('AUTH_LOGGED', 99);
define('AUTH_NOT_LOGGED', 100);

define('AUTH_USE_COOKIE', 101);
define('AUTH_USE_LINK', 103);
define('AUTH_INVALID_PARAMS', 104);
define('AUTH_LOGEDD_IN', 105);
define('AUTH_FAILED', 106);

define('REG_ERRORS', 107);
define('REG_SUCCESS', 108);
define('REG_FAILED', 109);

$conn = @mysql_connect($CONFIG['host'], $CONFIG['user'], $CONFIG['pass']) or die('Impossibile stabilire una connessione');
@mysql_select_db($CONFIG['dbname']) or die("Errore nel DB");
 ?>

tabella db
[quote]CREATE TABLE `contact` (
  `id` int(40) NOT NULL default '0',
  `date` datetime NOT NULL default '0000-00-00 00:00:00',
  `name` varchar(50) NOT NULL default '',
  `cognome` varchar(50) NOT NULL default '',
  `email` varchar(100) NOT NULL default '',
  `telefono` varchar(50) NOT NULL default '',
  `oggetto` varchar(100) NOT NULL default '',
  `comments` text NOT NULL,
  `ip` varchar(15) NOT NULL default '',
  PRIMARY KEY  (`id`)
)[/quote]
inviato 9 anni fa
roccochiolo
X 0 X

metti all'inizio dello script:

error_reporting(E_ALL);

e vedi se ti vengono mostrati dei messaggi di errore

 :bye:

risposto 9 anni fa
Gianni Tomasicchio
X 0 X

 ciao  mi da i seguenti errori

Notice: Undefined variable: REMOTE_ADDR in D:\Inetpub\vhosts\marikwebdesigner.com\httpdocs\Actionscript\mailform.PHP on line 16

Notice: Undefined index: action in D:\Inetpub\vhosts\marikwebdesigner.com\httpdocs\Actionscript\mailform.PHP on line 20

Notice: Undefined index: email in D:\Inetpub\vhosts\marikwebdesigner.com\httpdocs\Actionscript\mailform.PHP on line 21

Notice: Undefined index: name in D:\Inetpub\vhosts\marikwebdesigner.com\httpdocs\Actionscript\mailform.PHP on line 22

Notice: Undefined index: cognome in D:\Inetpub\vhosts\marikwebdesigner.com\httpdocs\Actionscript\mailform.PHP on line 23

Notice: Undefined index: comments in D:\Inetpub\vhosts\marikwebdesigner.com\httpdocs\Actionscript\mailform.PHP on line 24

Notice: Undefined index: telefono in D:\Inetpub\vhosts\marikwebdesigner.com\httpdocs\Actionscript\mailform.PHP on line 25

Notice: Undefined index: oggetto in D:\Inetpub\vhosts\marikwebdesigner.com\httpdocs\Actionscript\mailform.PHP on line 26

risposto 9 anni fa
roccochiolo
X 0 X

cambia $HTTP_POST_VARS in $_POST e riprova

 :bye:

risposto 9 anni fa
Gianni Tomasicchio
X 0 X

ora  mi  funziona  secondo me era la tabella che non aveva l id autoincrement  comunque  quest script a un controllo per l email che se l emeil ce nel atabase come lo possotogliere il controllo?

risposto 9 anni fa
roccochiolo
X 0 X
Effettua l'accesso o registrati per rispondere a questa domanda