codice:
<?php require_once('../../../Connections/PHPMySQL.php'); ?>
<?php
if (!function_exists("GetSQLValueString")) {
function GetSQLValueString($theValue, $theType, $theDefinedValue = "", $theNotDefinedValue = "")
{
if (PHP_VERSION < 6) {
$theValue = get_magic_quotes_gpc() ? stripslashes($theValue) : $theValue;
}
$theValue = function_exists("mysql_real_escape_string") ? mysql_real_escape_string($theValue) : mysql_escape_string($theValue);
switch ($theType) {
case "text":
$theValue = ($theValue != "") ? "'" . $theValue . "'" : "NULL";
break;
case "long":
case "int":
$theValue = ($theValue != "") ? intval($theValue) : "NULL";
break;
case "double":
$theValue = ($theValue != "") ? doubleval($theValue) : "NULL";
break;
case "date":
$theValue = ($theValue != "") ? "'" . $theValue . "'" : "NULL";
break;
case "defined":
$theValue = ($theValue != "") ? $theDefinedValue : $theNotDefinedValue;
break;
}
return $theValue;
}
}
$editFormAction = $_SERVER['PHP_SELF'];
if (isset($_SERVER['QUERY_STRING'])) {
$editFormAction .= "?" . htmlentities($_SERVER['QUERY_STRING']);
}
if ((isset($_POST["MM_insert"])) && ($_POST["MM_insert"] == "richiesta")) {
$insertSQL = sprintf("INSERT INTO richieste (codice, ragionesociale, nome, cognome, email, telefono, versione, patch, argomento, quesito, punto, data, allegato) VALUES (%s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, NOW(), '{$allegato}')",
GetSQLValueString($_POST['codice'], "text"),
GetSQLValueString($_POST['ragionesociale'], "text"),
GetSQLValueString($_POST['nome'], "text"),
GetSQLValueString($_POST['cognome'], "text"),
GetSQLValueString($_POST['email'], "text"),
GetSQLValueString($_POST['telefono'], "text"),
GetSQLValueString($_POST['versione'], "text"),
GetSQLValueString($_POST['patch'], "text"),
GetSQLValueString($_POST['argomento'], "text"),
GetSQLValueString($_POST['quesito'], "text"),
GetSQLValueString($_POST['punto'], "text"));
mysql_select_db($database_PHPMySQL, $PHPMySQL);
$Result1 = mysql_query($insertSQL, $PHPMySQL) or die(mysql_error());
//Percorso dove raccoglieremo gli allegati
$percorso = "upload/";
//Codice Licenza
$codice = $_POST['codice'];
//Ragione Sociale
$ragionesociale = $_POST['ragionesociale'];
//Nome e Cognome
$nome = $_POST['nome'];
$cognome = $_POST['cognome'];
//Email
$email = $_POST['email'];
//Telefono
$telefono = $_POST['telefono'];
//Versione Programma
$versione = $_POST['versione'];
//Patch aggiornamento
$patch = $_POST['patch'];
//Argomento
$argomento = $_POST['argomento'];
//Quesito
$quesito = $_POST['quesito'];
//Punto da verificare
$punto = $_POST['punto'];
//Upload dell'allegato
move_uploaded_file($_FILES['allegato']['tmp_name'], $percorso.$_FILES['allegato']['name']);
//Messaggio
$oggetto = "Richiesta di assistenza tecnica online";
$messaggio = "
Codice Licenza: $codice
Ragione Sociale: $ragionesociale
Nome: $nome
Cognome: $cognome
Email: $email
Telefono: $telefono
Versione Programma: $versione
Patch aggiornamento: $patch
Argomento: $argomento
Quesito: $quesito
Punto da verificare: $punto
";
//Inclusione della libreria
require_once('class.phpmailer.php');
require_once('class.smtp.php');
//Creiamo un oggetto PHPMailer e ne settiamo le variabili
$mail = new PHPMailer();
$mail->From = $email;
$mail->FromName = '';
$mail->AddAddress("info@xxx.it");
$mail->AddBCC("xxx@gmail.com");
$mail->SetLanguage('it','phpMailer/language/');
$mail->IsHTML(true);
$mail->Subject = $oggetto;
$mail->Body = $messaggio;
$mail->AddAttachment($percorso.$_FILES['allegato']['name']);
$dimensione_massima=15000000; //dimensione massima consentita per file in byte -> 1024 byte = 1 Kb
$dimensione_massima_Kb=$dimensione_massima/1024;
$cartella_upload="upload"; //cartella in cui eseguire l'upload (controllare permessi scrittura)
// percorso cartella relativo $cartella_upload="../upload/";
$filtrare=1; //filtrare x estensioni ammesse? 1=si 0=no
$array_estensioni_ammesse=array('.zip','.jpeg','.gif','.pdf'); //estensioni ammesse
if(!isset($_FILES['allegato']) || $_FILES['allegato']['size']==0){
echo "Nessun file selezionato per l'upload";
}elseif($_FILES['allegato']['size']>$dimensione_massima){
echo "Il file selezionato per l'upload supera dimensione massima di $dimensione_massima_Kb Kb";
}else{
$nome_file=$_FILES['allegato']['name'];
$errore="";
if($filtrare==1){
$estensione = strtolower(substr($nome_file, strrpos($nome_file, "."), strlen($nome_file)-strrpos($nome_file, ".")));
if(!in_array($estensione,$array_estensioni_ammesse)){
$errore.="Upload file non ammesso. Estensioni ammesse: ".implode(", ",$array_estensioni_ammesse)."
";
}
}
if(!file_exists($cartella_upload)){
$errore.="La cartella di destinazione non esiste</br>";
}
if($errore==""){
if(move_uploaded_file($_FILES['allegato']['tmp_name'], $cartella_upload.$_FILES['allegato']['name'])){
chmod($cartella_upload.$_FILES['allegato']['name'],0777);
//permessi per poterci sovrascrivere/scaricare
echo "Operazione eseguita con successo. Upload riuscito.";
}
}else{
echo $errore;
}
if($mail->Send())
echo '
Email inviata correttamente! Torna indietro </p>';
if(isset($_POST) && !empty($_POST) ) {
//esco direttamente in ridirect
}
exit();
}
}
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Modulo di assistenza tecnica online</title>
</head>
<body>
<form name="richiesta" action="<?php echo $editFormAction; ?>" method="POST" enctype="multipart/form-data" id="richiesta">
<table width="500" border="1">
<tr>
<td colspan="2"><strong class="titolo">Modulo per richiedere assistenza tecnica online[/b]</td>
</tr>
<tr>
<td width="167"><span class="obbligatori">*</span> Codice Licenza:
</td>
<td width="317"><input name="codice" type="number" size="20" maxlength="5" /><a href="#" class="tt">[img]../../../images/Question_Mark2.png[/img]<span class="tooltip"><span class="top">Inserire il proprio codice licenza di 5 cifre!
</span><span class="middle"></span><span class="bottom">Il codice licenza si trova o sull'etichetta, posta sulla chiave hardware, oppure in cliccare su Informazioni su del menu "?"</span></span></a> </td>
</tr>
<tr>
<td width="167"><span class="obbligatori">*</span> Ragione Sociale:</td>
<td width="317"><input name="ragionesociale" type="text" size="20" id="ragionesociale" /></td>
</tr>
<tr>
<td width="167"><span class="obbligatori">*</span> Nome:</td>
<td width="317"><input name="nome" type="text" size="20" /></td>
</tr>
<tr>
<td width="167"><span class="obbligatori">*</span> Cognome:</td>
<td width="317"><input name="cognome" type="text" size="20" /></td>
</tr>
<tr>
<td width="167"><span class="obbligatori">*</span> Email:</td>
<td width="317"><input name="email" type="email" size="20" /></td>
</tr>
<tr>
<td width="167"><span class="obbligatori">*</span> Telefono:</td>
<td width="317"><input name="telefono" type="number" size="20" id="telefono"/>
[img]../../../images/Question_Mark2.png[/img]<span class="tooltip"><span class="top"></span><span class="middle">Si prega di inserire solo caratteri numerici!</span><span class="bottom"></span></span> </td>
</tr>
<tr>
<td width="167"><label><span class="obbligatori">*</span> Versione Progetto INTEGRA:</label></td>
<td width="317"><label for="versione"></label>
<select name="versione" size="1" id="versione">
<option selected="selected">5.2.x</option>
<option>5.1.x</option>
<option>4.4.x</option>
</select> [img]../../../images/Question_Mark2.png[/img]<span class="tooltip"><span class="top"></span><span class="middle">Indicare per quale versione di si chiede assistenza!</span><span class="bottom"></span></span> </td>
</tr>
<tr>
<td><span class="obbligatori">*</span> Patch Aggiornamento:</td>
<td><input name="patch" type="number" size="20" id="patch" maxlength="2" />[img]../../../images/Question_Mark2.png[/img]<span class="tooltip"><span class="top"></span><span class="middle">Indicare la patch aggiornamento di cui si chiede assistenza!</span><span class="bottom"></span></span> </td>
</tr>
<tr>
<td width="167"><label><span class="obbligatori">*</span> Argomento:</label></td>
<td width="317"><select name="argomento" size="1" id="argomento">
<option selected>Generale</option>
<option>Altro</option>
<option>Installazione</option>
</select>[img]../../../images/Question_Mark2.png[/img]<span class="tooltip"><span class="top"></span><span class="middle">Selezionare l'argomento più attinente!</span><span class="bottom"></span></span></td>
</tr>
<tr>
<td width="167"><label><span class="obbligatori">*</span> Quesito:</label></td>
<td width="317"><label for="quesito"></label>
<textarea name="quesito" id="quesito"></textarea>[img]../../../images/Question_Mark2.png[/img]<span class="tooltip"><span class="top"></span><span class="middle">Scrivere in modo dettagliato il problema!</span><span class="bottom"></span></span></td>
</tr>
<tr>
<td width="167"><label><span class="obbligatori">*</span> Punto da verificare:</label></td>
<td width="317"><textarea name="punto" id="punto"></textarea>[img]../../../images/Question_Mark2.png[/img]<span class="tooltip"><span class="top"></span><span class="middle">Indicare il punto del progetto di cui si hanno problemi! </span><span class="bottom"></span></span></td>
</tr>
<tr>
<td width="167">Allegato:</td>
<td width="317"><input name="allegato" type="file" />[img]../../../images/Question_Mark2.png[/img]<span class="tooltip"><span class="top"></span><span class="middle">Allegare file esclusivamente in formato:</span><span class="bottom">.zip</span></span></td>
</tr>
<tr>
<td colspan="2" align="center"><input name="submit" type="submit" id="submit" value="Invia" />
<input name="Ripristina" type="reset" id="invia" value="Ripristina" />
</td>
</tr>
</table>
I campi contrassegnati con <span class="obbligatori">*</span> sono obbligatori
Premere [img]../../../images/Question_Mark2.png[/img]per le istruzioni di compilazione del modulo</p>
<input type="hidden" name="MM_insert" value="richiesta" />
</form>
</body>
</html>