[Php] script per il conteggio delle mail inviate

IImanuII

Utente Attivo
10 Giu 2012
390
0
16
Ho un form per l'invio di mail realizzato in php con controlli javascript.

Mi chiedevo se era possibile registrare e far visualizzare nello stesso form il numero di mail effettivamente inviate, nel caso limitarle.
Ad esempio nel form aggiungo un campo "mai inviate oggi" e di fianco il numero di mail che sono state inviate (che ovviamente si aggiorna automaticamente)
Se arriva ad es. a 100, il form all'atto dell'invio fa comparire un popup che dice "numero massimo di email raggiunto" oppure crea una limitazione server side che non rende possibile l'invio di ulteriori mail.

Una cosa del genere come si può sviluppare in php o javascript? Qualcuno mi posta un esempio?
 

borgo italia

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
4 Feb 2008
16.046
150
63
PR
www.borgo-italia.it
ciao
secondo me ti serve un db o un file testo per registrare il numero di em inviate.
non credo che ti serva ajax anche perchè quando premi il pulsante di submit ricarichi la pagina.
io farei così (schematizzo)

tabella inviate:
id
data
numero

pag. invio.php
PHP:
<?php
//i dati di connessione al db
$mumero_massimo=5000;
$dati=mysql_fetch_array(mysql_query("SELECT *FROM inviate"));//non metto il controllo per la prima volta di utilizzo
$id=$dati['id'];
$data=$dati['data'];
$quante=$dati['numero'];
//poi il form con tutti i campi di input necessari
echo "<form...........>";
//tutti i campi che ti servono.....
echo "email inviate $quante su $mumero_massimo";
if($quante < $mumero_massimo){//se inferiore mostri il submit
	echo "<input type=\"submit\ name=\"send\" value=\"send\">";
}else{//altrimenti no
	echo "non è possibile un nuovo invio";
}
echo "</form>";
//poi nella parte di invio
if(isset($_POST['send'])){
	$oggi=date("d m Y");
	if($oggi == $data){// proviene da $dati['data'];
		$up=mysql_query("UPDATE inviate SET numero=numero+1 WHERE id=$id");
	}else{
		$up=mysql_query("UPDATE inviate SET data= '$oggi', numero=0  WHERE id=$id");
	}
	//se vuoi un altro controllo
	if($quante < $mumero_massimo){
		//invio dell'email
	}else{
		echo "non è possibile un nuovo invio";
		//e ritorno al form
	}
}
?>
 

IImanuII

Utente Attivo
10 Giu 2012
390
0
16
ciao
secondo me ti serve un db o un file testo per registrare il numero di em inviate.
non credo che ti serva ajax anche perchè quando premi il pulsante di submit ricarichi la pagina.
io farei così (schematizzo)

tabella inviate:
id
data
numero

pag. invio.php
PHP:
<?php
//i dati di connessione al db
$mumero_massimo=5000;
$dati=mysql_fetch_array(mysql_query("SELECT *FROM inviate"));//non metto il controllo per la prima volta di utilizzo
$id=$dati['id'];
$data=$dati['data'];
$quante=$dati['numero'];
//poi il form con tutti i campi di input necessari
echo "<form...........>";
//tutti i campi che ti servono.....
echo "email inviate $quante su $mumero_massimo";
if($quante < $mumero_massimo){//se inferiore mostri il submit
	echo "<input type=\"submit\ name=\"send\" value=\"send\">";
}else{//altrimenti no
	echo "non è possibile un nuovo invio";
}
echo "</form>";
//poi nella parte di invio
if(isset($_POST['send'])){
	$oggi=date("d m Y");
	if($oggi == $data){// proviene da $dati['data'];
		$up=mysql_query("UPDATE inviate SET numero=numero+1 WHERE id=$id");
	}else{
		$up=mysql_query("UPDATE inviate SET data= '$oggi', numero=0  WHERE id=$id");
	}
	//se vuoi un altro controllo
	if($quante < $mumero_massimo){
		//invio dell'email
	}else{
		echo "non è possibile un nuovo invio";
		//e ritorno al form
	}
}
?>

la parte del form io l'ho scritta in html, per far funzionare il tuo controllo dovrei creare una nuova pagina php e inserire il codice del mio vecchio form in questa parte qui
PHP:
//poi il form con tutti i campi di input necessari
echo "<form...........>";

Giusto?

Il codice che mi hai postato tu necessita di un db mysql corretto?
Dove devo inserire i dati d'accesso al db?

per es il mio db i dati d'accesso sono:

$mysql_host = host.com
$mysql_database = nomedb
$mysql_user = user
$mysql_password = password

dove li inserisco?
 
Ultima modifica:

borgo italia

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
4 Feb 2008
16.046
150
63
PR
www.borgo-italia.it
ciao
ciao
si ad entrambe,
ti conviene fare una pag da includere nelle pag in cui usi il db
es:
PHP:
require_once "connessione.php";
e la pag. connessione.php
PHP:
<?php
//-------**pagina per connessione da fare include "connessione.php"**------------
//---variabili di connessione----------------------------------------
$host = 'host.com';     //nome host
$username = 'user';      //user name
$password = 'password';  //password
$db = 'nomedb';            // nome data base
//---connessione----------------------------------------------------
$conn = @mysql_connect($host,$username,$password) or die (mysql_error());
$sel = @mysql_select_db($db) or die (mysql_error());
// a mysql_error() si può sostituire un altro messaggio
?>
la parte del form io l'ho scritta in html
basta che tu modifichi l'estenzione della pag. da html o htm a .php, poi (come dice il SOMMO) ti conviene scrivere il form in php con i vari echo, ma niente ti impedisce entrare ed uscire da php
es.
PHP:
<?php
// cod php
?>
<form....>
<?php
// altro cod php
?>
</form>
 
Ultima modifica:

IImanuII

Utente Attivo
10 Giu 2012
390
0
16
Non mi trovo poichè non ho capito una cosa.

La mia struttura è questa:

Form.html + captcha + controlli dei campi in javascript -> invia i dati a pagina php che verifica il captcha -> invia la mail

Il form rimanda alla pagina di invio.php così
PHP:
<form name="modulo" action="invio.php" method="post" enctype="multipart/form-data" onSubmit="return validate()" >

onSubmit non è altro che il controllo sui campi.

Adesso la modifica da fare è:
1. rinomino l'html in php
2. prima dei tag <html> inserisco
PHP:
<?php 

// mi connetto al db per il conteggio delle mail
require_once "connessione.php";  

?>

Adesso non so più come procedere, :hammer:
Come faccio ad inserire il nuovo form per il conteggio delle mail?

cioè questa parte di codice
PHP:
<?php
//i dati di connessione al db
$mumero_massimo=5000;
$dati=mysql_fetch_array(mysql_query("SELECT *FROM inviate"));//non metto il controllo per la prima volta di utilizzo
$id=$dati['id'];
$data=$dati['data'];
$quante=$dati['numero'];
//poi il form con tutti i campi di input necessari
echo "<form...........>";
//tutti i campi che ti servono.....
echo "email inviate $quante su $mumero_massimo";
if($quante < $mumero_massimo){//se inferiore mostri il submit
    echo "<input type=\"submit\ name=\"send\" value=\"send\">";
}else{//altrimenti no
    echo "non è possibile un nuovo invio";
}
echo "</form>";
//poi nella parte di invio
if(isset($_POST['send'])){
    $oggi=date("d m Y");
    if($oggi == $data){// proviene da $dati['data'];
        $up=mysql_query("UPDATE inviate SET numero=numero+1 WHERE id=$id");
    }else{
        $up=mysql_query("UPDATE inviate SET data= '$oggi', numero=0  WHERE id=$id");
    }
    //se vuoi un altro controllo
    if($quante < $mumero_massimo){
        //invio dell'email
    }else{
        echo "non è possibile un nuovo invio";
        //e ritorno al form
    }
}
?>

cioè è in questo punto che devo creare il nuovo form?
PHP:
//poi il form con tutti i campi di input necessari
echo "<form...........>";

Ma poi, perchè devo creare un form di imput se il form deve essere un contatore?

Tale form sarà poi "indipendente" dalla mia pagina di invio.php?
 
Ultima modifica:

IImanuII

Utente Attivo
10 Giu 2012
390
0
16
EDIT: volevo far presente che ho utilizzato questo form ovviamente con alcune modifiche solo che non ho potuto modificare il mio messaggio ed ho dovuto fare un doppio post :crying:
 

borgo italia

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
4 Feb 2008
16.046
150
63
PR
www.borgo-italia.it
ciao
non è che devi fare un nuovo form.
se il tuo form punta alla pag, invio.php il controllo e l'aggiornamento del numero lo fai nella pag invio.php
l'unica cosa che forse devi fare è mettere l'if per il submit (accessibile se numero < ammesso, altrimeni non accessibile)

nella pag invio, come detto metti l'up del numero e anche li
se numero < ammesso invii l'email
altrimenti avvisi che non può essere inviata e torni alla pag che ti pare
 

IImanuII

Utente Attivo
10 Giu 2012
390
0
16
Ti posto un attimo il codice, e ti faccio vedere come l'ho modificato:

form.php

PHP:
<html> 
<head> 

<title></title>

<META HTTP-EQUIV="Imagetoolbar" Content="no">

<link rel="stylesheet" type="text/css" href="stile.css">

<script language="javascript">

//funzione per disabilitare il tasto destro del mouse
var message=""; 

function clickIE() {

if (document.all) {
(message); 
return false
}

} 

function clickNS(e) {

if (document.layers||(document.getElementById&&!document.all)) {
if (e.which==2||e.which==3) {(message); return false}}} 
if (document.layers) {document.captureEvents(Event.MOUSEDOWN); document.onmousedown=clickNS} 
else {
document.onmouseup=clickNS; document.oncontextmenu=clickIE
} 

document.oncontextmenu=new Function("return false")

// funzione per accettare solo numeri nel box del campo verifica

function reloadCaptcha() 
{
	document.getElementById("image").src=document.getElementById("image").src;
}

function keyCheck(eventObj, obj)
{
var keyCode

// Check For Browser Type
if (document.all){
keyCode=eventObj.keyCode
}
else{
keyCode=eventObj.which
}

var str=obj.value

if(keyCode==46){
if (str.indexOf(".")>0){
return false
}
}

if((keyCode<48 || keyCode >58) && (keyCode != 46)){ // Allow only integers and decimal points
return false
}

return true
}

//funzione di validazione delle due mail, messaggio, nome e oggetto
function validate()
{
var str=true;
document.getElementById("msgnome").innerHTML="";
document.getElementById("msgemailinvia").innerHTML="";
document.getElementById("oggetto").innerHTML="";



if(document.modulo.nomedichiinvia.value=='')
{
document.getElementById("msgnome").innerHTML="&nbsp;<img src=\"./sign_warning.png\" align=\"absmiddle\">&nbsp;Inserire il nome.";
str=false;
}

var validate_char= /^[\w\-\.\+]+\@[a-zA-Z0-9\.\-]+\.[a-zA-z0-9]{2,4}$/;
if(!document.modulo.maildichiinvia.value.match(validate_char))
{
document.getElementById("msgemailinvia").innerHTML="&nbsp;<img src=\"./sign_warning.png\" align=\"absmiddle\">&nbsp;Inserire un indirizzo email valido.";
str=false;
}

if(document.modulo.oggetto.value=='')
{
document.getElementById("oggetto").innerHTML="&nbsp;<img src=\"./sign_warning.png\" align=\"absmiddle\">&nbsp;Inserire l\'oggetto della mail.";
str=false;
}

if(document.modulo.messaggio.value=='')
{
document.getElementById("messaggio").innerHTML="&nbsp;<img src=\"./sign_warning.png\" align=\"absmiddle\">&nbsp;Inserire il messaggio.";
str=false;
}

return str;

}
</script>

</head> 
<body oncontextmenu="return false;" ondragstart="return false;" onselectstart="return false;">

<p> 

<!-- Procedo costruendo il form che passerà le informazioni inserite nella pagina invio.php. -->  

<form name="modulo" action="invio.php" method="post" enctype="multipart/form-data" onSubmit="return validate()" >
<table border="0" align="center" >

<!-- inserisco il nome da visualizzare -->	
    <tr>
      <td width="160"><div align="left"><b>Nome di chi invia&nbsp;:</b>&nbsp;&nbsp;&nbsp;<br></div></td>
      <td width="100"><input size="44" type="text" name="nomedichiinvia" ></td>
    </tr> 

    <tr>
      <td width="160"><br></td>
      <td width="100"><div></div><div id="msgnome" style="color:#FF0000"></div></td>
    </tr>

<!-- inserisco l'email di chi invia la mail -->	
    <tr>
      <td width="160"><div align="left"><b>Email di chi invia&nbsp;:</b>&nbsp;&nbsp;&nbsp;<br></div></td>
      <td width="100"><input size="44" type="text" name="maildichiinvia" ></td>
    </tr> 

    <tr>
      <td width="160"><br></td>
      <td width="100"><div id="msgemailinvia" style="color:#FF0000"></div></td>
    </tr>

<!-- inserisco l'oggetto della mail -->		
    <tr>
      <td width="160"><div align="left"><b>Oggetto&nbsp;:</b>&nbsp;&nbsp;&nbsp;<br></div></td>
      <td width="100"><input size="44" type="text" name="oggetto" ></td>
    </tr> 

    <tr>
      <td width="160"><br></td>
      <td width="100"><div id="oggetto" style="color:#FF0000"></div></td>
    </tr>
	
<!-- inserisco il messaggio della mail -->		
    <tr>
      <td width="160"><div align="left"><b>Messaggio&nbsp;:</b>&nbsp;&nbsp;&nbsp;<br></div></td>
      <td width="100"><textarea cols="20" rows="4" name="messaggio" style="width:293px;overflow:hidden;height:130px; max-width:300px;max-height:130px"></textarea></td>
    </tr> 

    <tr>
      <td width="160"><br></td>
      <td width="100"><div id="messaggio" style="color:#FF0000"></div></td>
    </tr>

<!-- inserisco l'allegato della mail -->		
    <tr>
      <td width="160"><div align="left"><b>Allega file&nbsp;:</b>&nbsp;&nbsp;&nbsp;<br></div></td>
      <td width="100"><input type="file" name="allegato" size="32" class="file_1"/></td>
    </tr> 
	
    <tr>
      <td width="160"><br></td>
      <td width="100"></td>
    </tr>
	
<!-- inserisco il captcha e all'interno richiamo onKeyPress="return keyCheck(event, this)" per il controllo dei numeri -->		
    <tr>
		<td width="160"><div align="left"><b>Codice di verifica&nbsp;:</b>&nbsp;&nbsp;&nbsp;<br></div></td>
      	<td width="30"><input type="text" name="verif_box" id="verif_box" size="25" onKeyPress="return keyCheck(event, this)" />
<!-- richiamo onclick="javascript:reloadCaptcha()" per refreshare il captcha -->		
			<a onclick="javascript:reloadCaptcha()" style="cursor: pointer;"><img src="refresh.png" valign="middle" ></a>
<!-- racchiudo l'immagine in un frame per poterla ricaricare senza perdere i dati salvati, richiamando iframe nel css per controllarlo su firefox -->	
			<iframe align="left" valign="top" id="image" style="border:0;height:40px;width:60px" scrolling="no" src="verificationimage.php?<?php echo rand(0,9999);?>" ></iframe>
		</td>
			
    </tr> 
	
    <tr>
      <td width="160"><br></td>
      <td width="100"></div></td>
    </tr>
	
<!-- inserisco i pulsanti di invio e reset -->	
    <tr>
      <td width="160"><br></td>
      <td width="100"><center><input type="submit" name="Submit" value="Invia"><input type="reset" value="Reset"></center></td>
    </tr>

  </table>
</td>
</tr>
</table>
</form>

</p> 


</body> 
</html>

invio.php

PHP:
<?php 

require_once "connessione.php";  

session_start();

if ($_POST['Submit'] == 'Invia')
{

// Recupero il valore dei campi del form
 
$fromname = $_POST['nomedichiinvia'];
$fromemail = $_POST['maildichiinvia'];
$destinatario = "[email protected]"; 
$oggetto = $_POST['oggetto']; 
$messaggio = $_POST['messaggio']; 
$verif_box = $_POST["verif_box"];

// Valorizzo le variabili relative all'allegato 
$allegato = $_FILES['allegato']['tmp_name']; 
$allegato_type = $_FILES['allegato']['type']; 
$allegato_name = $_FILES['allegato']['name']; 

// Creo la variabile headers che mi darà la fake mail recuperando i valori fromname e fromemail.. creo la variabile msg che si andrà a riempire successivamente
$lt= '<';
$gt= '>';
$sp= ' ';
$from= 'From:';
$headers = $from.$fromname.$sp.$lt.$fromemail.$gt;
$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}\""; 

  // 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 .= $messaggio . "\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; 
} 

///////////////////////////////////////////////////controllo limite email\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\

//i dati di connessione al db
$mumero_massimo=2;
$dati=mysql_fetch_array(mysql_query("SELECT *FROM inviate"));//non metto il controllo per la prima volta di utilizzo
$id=$dati['id'];
$data=$dati['data'];
$quante=$dati['numero'];

//poi il form con tutti i campi di input necessari
echo "<form...........>";

//tutti i campi che ti servono.....
echo "email inviate $quante su $mumero_massimo";
if($quante < $mumero_massimo){//se inferiore mostri il submit
    echo "<input type=\"submit\ name=\"Invia\" value=\"Invia\">";
}else{//altrimenti no
    echo "non è possibile un nuovo invio";
}
echo "</form>";
//poi nella parte di invio
if(isset($_POST['Invia'])){
    $oggi=date("d m Y");
    if($oggi == $data){// proviene da $dati['data'];
        $up=mysql_query("UPDATE inviate SET numero=numero+1 WHERE id=$id");
    }else{
        $up=mysql_query("UPDATE inviate SET data= '$oggi', numero=0  WHERE id=$id");
    }
    //se vuoi un altro controllo
    if($quante < $mumero_massimo){
        //invio dell'email
    }else{
        echo "non è possibile un nuovo invio";
        //e ritorno al form
    }
}



// controllo se il codice di verifica è corretto
if(md5($verif_box).'a4xn' == $_COOKIE['tntcon']){
	// se il codice di verifica è corretto invio il messaggio
	mail($destinatario, $oggetto, $msg, $headers);
	// cancello il cookie in modo che non può essere inviato nuovamente aggiornando la pagina
	setcookie('tntcon','');
} else if(isset($message) and $message!=""){
	// se il codice di verifica non è corretto o provano ad accedere direttamente alla pagina php mostro l'errore.
} else {

	echo '<html><center>OooopS!</center><br><a href="javascript:history.go(-1)">Torna indietro</a></html>';
	
	exit;
	}

} 
?>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>E-Mail inviata</title>
<style type="text/css">
<!--
body,td,th {
	font-family: Arial, Helvetica, sans-serif;
	font-size: 12px;
}
-->
</style></head>

<body>
<table width="100%" height="100%">
<tr>
<td align="center" valign="middle">

Email inviata. Grazie.<br />
<br />
<a href="javascript:history.go(-1)">Torna indietro</a>

</td>
</tr>
</table>
</body>
</html>

Ho fatto anche il file connessione.php come da te indicato ed effettivamente si connette.
Tuttavia non ho capito cosa devo fare con questo campo:

PHP:
//poi il form con tutti i campi di input necessari
echo "<form...........>";

E poi una volta inviata la mail mi da questo errore nel tuo codice

Codice:
Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in percorsocartelle/invio.php on line 87

Qui puoi vedere il form di prova e renderti conto

http://ryunion.herobo.com/invio/form.php

Credo di aver sbagliato tutto ^^
 
Ultima modifica:

borgo italia

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
4 Feb 2008
16.046
150
63
PR
www.borgo-italia.it
ciao
si effettivamente hai fatto un po' di caos, ci do un occhio poi ti posto.

un'altra piccola osservazione: i controlli dei campi tramite js sono scenografici ma facilmente aggirabili, i controlli si devono fare lato server
 

IImanuII

Utente Attivo
10 Giu 2012
390
0
16
ciao
si effettivamente hai fatto un po' di caos, ci do un occhio poi ti posto.

un'altra piccola osservazione: i controlli dei campi tramite js sono scenografici ma facilmente aggirabili, i controlli si devono fare lato server

Si lo so, basta disabilitare il javascript nel browser per aggirarli, il fatto è che ho fatto un "collage" di tanti script sia sul form che nel php, poi ho provato a sistemarli :3

La cosa strana è che per ora funziona xD

Ti ringrazio per il tempo che mi dedichi :eek: :mavieni:
 

borgo italia

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
4 Feb 2008
16.046
150
63
PR
www.borgo-italia.it
ciao
ecco come dovresti sistemare
ho tolto i tuoi commenti per non confonderli con quelli che ho messo io (leggili)
ti ho aggiunto il metodo per non accedere direttamente a invio.php


form.php
PHP:
<?php
session_start();//attento deve essere la prima istruzione anche prima di require o include
//ti aggiungo questa parte più sicura dei cookie per imperdire l'accesso a invia.php
$_SESSION['p'] = sha1(uniqid(mt_rand()));//genero e codifico un numero casuale
//come vedrai ti aggiungo un campo hidden per trasmettere e confrontare il numero generato
/*
qui la parte per la verifica del numero di email inviate
è inutile mostrare il pulsante di submit se l'email non può essere inviata, o meglio
NON mostrare l'intero form, dai un avviso e riinvii alla pg che vuoi
*/
$numero_massimo=5000;//che puoi modificare
$oggi=date("Y-m-d");//!!!verifica che sia nello stesso formato di quello che hai nel db
require_once "connessione.php";
$dati=mysql_fetch_array(mysql_query("SELECT *FROM inviate"));
$id=$dati['id'];
$data=$dati['data'];
$quante=$dati['numero'];
//verifico quante email sono state inviate oggi
if($oggi == $data && $quante >= $numero_massimo){
	//oggi ho raggiunto il numero massimo di email quindi non posso inviare
	//avviso e ritorno in automatico alla pag che mi pare
	echo "<h1>oggi $oggi sono state gia inviate $quante email, non è possibile inviarne altre</h1>";
	//quindi dopo 4 sec riinvio (uso il tag meta e non header refresh per non aggiungere altre istruzioni)
	echo "<meta http-equiv='Refresh' content='4; URL=nome_pagina_che_voglio.php'>";
	exit;
}else{
//non ho raggiunto il numero massimo quindi posso inviare
?>
<html> 
<head> 
<title></title>
<META HTTP-EQUIV="Imagetoolbar" Content="no">
<link rel="stylesheet" type="text/css" href="stile.css">
<script language="javascript">
<!-- qi ho tralsciato di scrivere tutto gli script js poi li rimetti tu-->
</script>
</head> 
<body oncontextmenu="return false;" ondragstart="return false;" onselectstart="return false;">
<p>  
<form name="modulo" action="invio.php" method="post" enctype="multipart/form-data" onSubmit="return validate()" >
<table border="0" align="center" >  
    <tr>
      <td width="160"><div align="left"><b>Nome di chi invia&nbsp;:</b>&nbsp;&nbsp;&nbsp;<br></div></td>
      <td width="100"><input size="44" type="text" name="nomedichiinvia" ></td>
    </tr> 
    <tr>
      <td width="160"><br></td>
      <td width="100"><div></div><div id="msgnome" style="color:#FF0000"></div></td>
    </tr>  
    <tr>
      <td width="160"><div align="left"><b>Email di chi invia&nbsp;:</b>&nbsp;&nbsp;&nbsp;<br></div></td>
      <td width="100"><input size="44" type="text" name="maildichiinvia" ></td>
    </tr> 
    <tr>
      <td width="160"><br></td>
      <td width="100"><div id="msgemailinvia" style="color:#FF0000"></div></td>
    </tr>     
    <tr>
      <td width="160"><div align="left"><b>Oggetto&nbsp;:</b>&nbsp;&nbsp;&nbsp;<br></div></td>
      <td width="100"><input size="44" type="text" name="oggetto" ></td>
    </tr> 
    <tr>
      <td width="160"><br></td>
      <td width="100"><div id="oggetto" style="color:#FF0000"></div></td>
    </tr>       
    <tr>
      <td width="160"><div align="left"><b>Messaggio&nbsp;:</b>&nbsp;&nbsp;&nbsp;<br></div></td>
      <td width="100"><textarea cols="20" rows="4" name="messaggio" style="width:293px;overflow:hidden;height:130px; max-width:300px;max-height:130px"></textarea></td>
    </tr> 
    <tr>
      <td width="160"><br></td>
      <td width="100"><div id="messaggio" style="color:#FF0000"></div></td>
    </tr>        
    <tr>
      <td width="160"><div align="left"><b>Allega file&nbsp;:</b>&nbsp;&nbsp;&nbsp;<br></div></td>
      <td width="100"><input type="file" name="allegato" size="32" class="file_1"/></td>
    </tr>
    <tr>
      <td width="160"><br></td>
      <td width="100"></td>
    </tr>      
    <tr>
        <td width="160"><div align="left"><b>Codice di verifica&nbsp;:</b>&nbsp;&nbsp;&nbsp;<br></div></td>
          <td width="30"><input type="text" name="verif_box" id="verif_box" size="25" onKeyPress="return keyCheck(event, this)" />      
            <a onclick="javascript:reloadCaptcha()" style="cursor: pointer;"><img src="refresh.png" valign="middle" ></a> 
            <iframe align="left" valign="top" id="image" style="border:0;height:40px;width:60px" scrolling="no" src="verificationimage.php?<?php echo rand(0,9999);?>" ></iframe>
        </td>
    </tr> 
    <tr>
      <td width="160"><br></td>
      <td width="100"></div></td>
    </tr>    
    <tr>
      <!-- *********ecco qui il campo hidden ******-->
	  <td width="160"><input name="accesso" type="hidden" value="<?php echo $_SESSION['p'];?>"></td>
      <td width="100"><center><input type="submit" name="Submit" value="Invia"><input type="reset" value="Reset"></center></td>
    </tr>
  </table>
</td>
</tr>
</table>
</form>
</body> 
</html>
<?php
}//fine dell if else invio permesso o non permesso
?>
invio.php
PHP:
<?php
session_start();
if(!isset($_SESSION['p']) || $_SESSION['p'] != $_POST['accesso']){//ricorda i cookie possono essere cancellati dall'utente
	//la sessione non esiste o è diversa da valore del campo nascosto: ho tentato un accesso diretto a invio.php
	header('Location: nome_pagina_che_voglio.php');
	exit;
}else{
	//provengo dal form quindi posso fare le verifiche del numero per upparlo
	//la cosa è possibile solo se il numero di oggi è minore dell'ammesso
	//elimino la sessione che non serve più
	unset($_SESSION['p']);
	require_once "connessione.php";
	$mumero_massimo=5000;
	$dati=mysql_fetch_array(mysql_query("SELECT *FROM inviate"));//non metto il controllo per la prima volta di utilizzo
	$id=$dati['id'];
	$data=$dati['data'];
	$quante=$dati['numero'];
	$oggi=date("d m Y");
    if($oggi == $data){
        //aggiorno il numero di email inviate oggi
		$up=mysql_query("UPDATE inviate SET numero=numero+1 WHERE id=$id");
    }else{
        $up=mysql_query("UPDATE inviate SET data= '$oggi', numero=0  WHERE id=$id");
    }
	/* ***************************
	qui dovresti mettere i controlli lato server dei dati inviati
	qui metti tutto il tuo ambaradan di lettura dei dati e l'invio
	**************************** */
}//fine if else : provengo da form.php
?>
poi abbandona la funzione nativa php mail() e usa la classe phpmailler
https://www.mrw.it/php/articoli/inviare-email-classe-phpmailer_631.html
 

IImanuII

Utente Attivo
10 Giu 2012
390
0
16
Ok grazie adesso provo.

Ho provato con phpmailer, ma àla differenza che ho con questo script è che con hotmail se uso phpmailer i messaggi mi arrivano nella cartella spam! invece con la funzione mail() mi arrivano in posta in arrivo.

:p

Ti tengo aggiornato (anche se lo so che non ci tieni x) )
 

IImanuII

Utente Attivo
10 Giu 2012
390
0
16
C'è sempre qualcosa che non va con questa linea:

PHP:
$dati=mysql_fetch_array(mysql_query("SELECT *FROM inviate"));

Aprendo il form a schermo mi visualizza quest'errore:

Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in /*****/form.php on line 14

Se provo ad inviare la mail non parte e mi porta su:

PHP:
  //la sessione non esiste o è diversa da valore del campo nascosto: ho tentato un accesso diretto a invio.php 
    header('Location: nome_pagina_che_voglio.php'); 
    exit;

Come se volessi accedere direttamente alla pagina di invio .php

Cos'è?

PS ho notato che nel phpMyAdmin non crea tabelle
 

Allegati

  • Immagine.png
    Immagine.png
    7,5 KB · Visite: 302
Ultima modifica:

IImanuII

Utente Attivo
10 Giu 2012
390
0
16
Ormai i test li sto facendo qui

http://ryunion.herobo.com/invio/form.php

Il codice l'ho modificato secondo le tue istruzioni così:

Form

PHP:
<?php 
session_start();//attento deve essere la prima istruzione anche prima di require o include 
//ti aggiungo questa parte più sicura dei cookie per imperdire l'accesso a invia.php 
$_SESSION['p'] = sha1(uniqid(mt_rand()));//genero e codifico un numero casuale 
//come vedrai ti aggiungo un campo hidden per trasmettere e confrontare il numero generato 
/* 
qui la parte per la verifica del numero di email inviate 
è inutile mostrare il pulsante di submit se l'email non può essere inviata, o meglio 
NON mostrare l'intero form, dai un avviso e riinvii alla pg che vuoi 
*/ 
$numero_massimo=10;//che puoi modificare 
$oggi=date("Y-m-d");//!!!verifica che sia nello stesso formato di quello che hai nel db 
require_once "connessione.php"; 
$dati=mysql_fetch_array(mysql_query("SELECT *FROM inviate")); 
$id=$dati['id']; 
$data=$dati['data']; 
$quante=$dati['numero']; 
//verifico quante email sono state inviate oggi 
if($oggi == $data && $quante >= $numero_massimo){ 
    //oggi ho raggiunto il numero massimo di email quindi non posso inviare 
    //avviso e ritorno in automatico alla pag che mi pare 
    echo "<h1>oggi $oggi sono state gia inviate $quante email, non è possibile inviarne altre</h1>"; 
    //quindi dopo 4 sec riinvio (uso il tag meta e non header refresh per non aggiungere altre istruzioni) 
    echo "<meta http-equiv='Refresh' content='4; URL=ops.php'>"; 
    exit; 
}else{ 
//non ho raggiunto il numero massimo quindi posso inviare 
?> 
<html>  
<head>  
<title></title> 
<META HTTP-EQUIV="Imagetoolbar" Content="no"> 
<link rel="stylesheet" type="text/css" href="stile.css"> 
<script language="javascript">

//funzione per disabilitare il tasto destro del mouse
var message=""; 

function clickIE() {

if (document.all) {
(message); 
return false
}

} 

function clickNS(e) {

if (document.layers||(document.getElementById&&!document.all)) {
if (e.which==2||e.which==3) {(message); return false}}} 
if (document.layers) {document.captureEvents(Event.MOUSEDOWN); document.onmousedown=clickNS} 
else {
document.onmouseup=clickNS; document.oncontextmenu=clickIE
} 

document.oncontextmenu=new Function("return false")

// funzione per accettare solo numeri nel box del campo verifica

function reloadCaptcha() 
{
	document.getElementById("image").src=document.getElementById("image").src;
}

function keyCheck(eventObj, obj)
{
var keyCode

// Check For Browser Type
if (document.all){
keyCode=eventObj.keyCode
}
else{
keyCode=eventObj.which
}

var str=obj.value

if(keyCode==46){
if (str.indexOf(".")>0){
return false
}
}

if((keyCode<48 || keyCode >58) && (keyCode != 46)){ // Allow only integers and decimal points
return false
}

return true
}

//funzione di validazione delle due mail, messaggio, nome e oggetto
function validate()
{
var str=true;
document.getElementById("msgnome").innerHTML="";
document.getElementById("msgemailinvia").innerHTML="";
document.getElementById("oggetto").innerHTML="";



if(document.modulo.nomedichiinvia.value=='')
{
document.getElementById("msgnome").innerHTML="&nbsp;<img src=\"./sign_warning.png\" align=\"absmiddle\">&nbsp;Inserire il nome.";
str=false;
}

var validate_char= /^[\w\-\.\+]+\@[a-zA-Z0-9\.\-]+\.[a-zA-z0-9]{2,4}$/;
if(!document.modulo.maildichiinvia.value.match(validate_char))
{
document.getElementById("msgemailinvia").innerHTML="&nbsp;<img src=\"./sign_warning.png\" align=\"absmiddle\">&nbsp;Inserire un indirizzo email valido.";
str=false;
}

if(document.modulo.oggetto.value=='')
{
document.getElementById("oggetto").innerHTML="&nbsp;<img src=\"./sign_warning.png\" align=\"absmiddle\">&nbsp;Inserire l\'oggetto della mail.";
str=false;
}

if(document.modulo.messaggio.value=='')
{
document.getElementById("messaggio").innerHTML="&nbsp;<img src=\"./sign_warning.png\" align=\"absmiddle\">&nbsp;Inserire il messaggio.";
str=false;
}

return str;

}
</script>
</head>  
<body oncontextmenu="return false;" ondragstart="return false;" onselectstart="return false;"> 
<p>   
<form name="modulo" action="invio.php" method="post" enctype="multipart/form-data" onSubmit="return validate()" > 
<table border="0" align="center" >   
    <tr> 
      <td width="160"><div align="left"><b>Nome di chi invia&nbsp;:</b>&nbsp;&nbsp;&nbsp;<br></div></td> 
      <td width="100"><input size="44" type="text" name="nomedichiinvia" ></td> 
    </tr>  
    <tr> 
      <td width="160"><br></td> 
      <td width="100"><div></div><div id="msgnome" style="color:#FF0000"></div></td> 
    </tr>   
    <tr> 
      <td width="160"><div align="left"><b>Email di chi invia&nbsp;:</b>&nbsp;&nbsp;&nbsp;<br></div></td> 
      <td width="100"><input size="44" type="text" name="maildichiinvia" ></td> 
    </tr>  
    <tr> 
      <td width="160"><br></td> 
      <td width="100"><div id="msgemailinvia" style="color:#FF0000"></div></td> 
    </tr>      
    <tr> 
      <td width="160"><div align="left"><b>Oggetto&nbsp;:</b>&nbsp;&nbsp;&nbsp;<br></div></td> 
      <td width="100"><input size="44" type="text" name="oggetto" ></td> 
    </tr>  
    <tr> 
      <td width="160"><br></td> 
      <td width="100"><div id="oggetto" style="color:#FF0000"></div></td> 
    </tr>        
    <tr> 
      <td width="160"><div align="left"><b>Messaggio&nbsp;:</b>&nbsp;&nbsp;&nbsp;<br></div></td> 
      <td width="100"><textarea cols="20" rows="4" name="messaggio" style="width:293px;overflow:hidden;height:130px; max-width:300px;max-height:130px"></textarea></td> 
    </tr>  
    <tr> 
      <td width="160"><br></td> 
      <td width="100"><div id="messaggio" style="color:#FF0000"></div></td> 
    </tr>         
    <tr> 
      <td width="160"><div align="left"><b>Allega file&nbsp;:</b>&nbsp;&nbsp;&nbsp;<br></div></td> 
      <td width="100"><input type="file" name="allegato" size="32" class="file_1"/></td> 
    </tr> 
    <tr> 
      <td width="160"><br></td> 
      <td width="100"></td> 
    </tr>       
    <tr> 
        <td width="160"><div align="left"><b>Codice di verifica&nbsp;:</b>&nbsp;&nbsp;&nbsp;<br></div></td> 
          <td width="30"><input type="text" name="verif_box" id="verif_box" size="25" onKeyPress="return keyCheck(event, this)" />       
            <a onclick="javascript:reloadCaptcha()" style="cursor: pointer;"><img src="refresh.png" valign="middle" ></a>  
            <iframe align="left" valign="top" id="image" style="border:0;height:40px;width:60px" scrolling="no" src="verificationimage.php?<?php echo rand(0,9999);?>" ></iframe> 
        </td> 
    </tr>  
    <tr> 
      <td width="160"><br></td> 
      <td width="100"></div></td> 
    </tr>     
    <tr> 
      <!-- *********ecco qui il campo hidden ******--> 
      <td width="160"><input name="accesso" type="hidden" value="<?php echo $_SESSION['p'];?>"></td> 
      <td width="100"><center><input type="submit" name="Submit" value="Invia"><input type="reset" value="Reset"></center></td> 
    </tr> 
  </table> 
</td> 
</tr> 
</table> 
</form> 
</body>  
</html> 
<?php 
}//fine dell if else invio permesso o non permesso 
?>

invio

PHP:
<?php 
session_start(); 
if(!isset($_SESSION['p']) || $_SESSION['p'] != $_POST['accesso']){//ricorda i cookie possono essere cancellati dall'utente 
    //la sessione non esiste o è diversa da valore del campo nascosto: ho tentato un accesso diretto a invio.php 
    header('Location: ops.php'); 
    exit; 
}else{ 
    //provengo dal form quindi posso fare le verifiche del numero per upparlo 
    //la cosa è possibile solo se il numero di oggi è minore dell'ammesso 
    //elimino la sessione che non serve più 
    unset($_SESSION['p']); 
    require_once "connessione.php"; 
    $mumero_massimo=10; 
    $dati=mysql_fetch_array(mysql_query("SELECT *FROM inviate"));//non metto il controllo per la prima volta di utilizzo 
    $id=$dati['id']; 
    $data=$dati['data']; 
    $quante=$dati['numero']; 
    $oggi=date("d m Y"); 
    if($oggi == $data){ 
        //aggiorno il numero di email inviate oggi 
        $up=mysql_query("UPDATE inviate SET numero=numero+1 WHERE id=$id"); 
    }else{ 
        $up=mysql_query("UPDATE inviate SET data= '$oggi', numero=0  WHERE id=$id"); 
    } 
    /* *************************** 
    qui dovresti mettere i controlli lato server dei dati inviati 
    qui metti tutto il tuo ambaradan di lettura dei dati e l'invio 
    **************************** */ 
if ($_POST['Submit'] == 'Invia')
{

// Recupero il valore dei campi del form
 
$fromname = $_POST['nomedichiinvia'];
$fromemail = $_POST['maildichiinvia'];
$destinatario = "[email protected]"; 
$oggetto = $_POST['oggetto']; 
$messaggio = $_POST['messaggio']; 
$verif_box = $_POST["verif_box"];

// Valorizzo le variabili relative all'allegato 
$allegato = $_FILES['allegato']['tmp_name']; 
$allegato_type = $_FILES['allegato']['type']; 
$allegato_name = $_FILES['allegato']['name']; 

// Creo la variabile headers che mi darà la fake mail recuperando i valori fromname e fromemail.. creo la variabile msg che si andrà a riempire successivamente
$lt= '<';
$gt= '>';
$sp= ' ';
$from= 'From:';
$headers = $from.$fromname.$sp.$lt.$fromemail.$gt;
$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}\""; 

  // 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 .= $messaggio . "\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; 
} 	


// controllo se il codice di verifica è corretto
if(md5($verif_box).'a4xn' == $_COOKIE['tntcon']){
	// se il codice di verifica è corretto invio il messaggio
	mail($destinatario, $oggetto, $msg, $headers);
	// cancello il cookie in modo che non può essere inviato nuovamente aggiornando la pagina
	setcookie('tntcon','');
} else if(isset($message) and $message!=""){
	// se il codice di verifica non è corretto o provano ad accedere direttamente alla pagina php mostro l'errore.
} else {

	echo '<html><center>OooopS!</center><br><a href="javascript:history.go(-1)">Torna indietro</a></html>';
	
	exit;
	}

} 
	
	
}//fine if else : provengo da form.php 
?>

<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>E-Mail inviata</title>
<style type="text/css">
<!--
body,td,th {
	font-family: Arial, Helvetica, sans-serif;
	font-size: 12px;
}
-->
</style></head>

<body>
<table width="100%" height="100%">
<tr>
<td align="center" valign="middle">

Email inviata. Grazie.<br />
<br />
<a href="javascript:history.go(-1)">Torna indietro</a>

</td>
</tr>
</table>
</body>
</html>

Ho notato questo:

- In qualunque caso nel db non vengono create tabelle (il db rimane vuoto)
- Il limite l'ho abbassato a 10 per provarlo e non funziona infatti di mail ne ho inviate 13 :(

:confused::hammer:
 

borgo italia

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
4 Feb 2008
16.046
150
63
PR
www.borgo-italia.it
ciao
lo script non crea la tabella la la legge o la uppa solamente.
se la tabella non c'è lo script non funzia
la tabella devi creartela con mysqladmin o con uno script apposito. scrip che una volta lanciato potrai eliminare. ora ti posto un esmpio.
 

IImanuII

Utente Attivo
10 Giu 2012
390
0
16
Ah ok, quindi lo script in php non crea la tabella ma devo crearla io manualmente da phpmyAdmin?

Qui poi dici

PHP:
$oggi=date("Y-m-d");//!!!verifica che sia nello stesso formato di quello che hai nel db

Se il db è vuoto, è inutile preoccuparsene giusto?

Attendo l'esempio per comprendere :D

Mamma mia comunque che pazienza che stai avendo con me ti ringrazio tanto :3 se c'è qualcosa che posso fare per te dimmelo xD

:byebye:
 

borgo italia

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
4 Feb 2008
16.046
150
63
PR
www.borgo-italia.it
ciao
lo carichi e lo lanci
crea_tabella.php
PHP:
<?php
require_once "connessione.php";
mysql_query("
CREATE TABLE IF NOT EXISTS `inviate` (
`id` INT( 6 ) NOT NULL AUTO_INCREMENT PRIMARY KEY ,
`data` DATETIME NOT NULL ,
`numero` INT( 6 ) NOT NULL DEFAULT '0'
) ENGINE = MYISAM ;
") or die mysql_error();
?>
da verificare il formato del campo data che deve essere uguale a quello che ricavi per la data in $oggi
verificata che la tabella sia stata creata puoi (anzi meglio) lo elimini
 

IImanuII

Utente Attivo
10 Giu 2012
390
0
16
ciao
lo carichi e lo lanci
crea_tabella.php
PHP:
<?php
require_once "connessione.php";
mysql_query("
CREATE TABLE IF NOT EXISTS `inviate` (
`id` INT( 6 ) NOT NULL AUTO_INCREMENT PRIMARY KEY ,
`data` DATETIME NOT NULL ,
`numero` INT( 6 ) NOT NULL DEFAULT '0'
) ENGINE = MYISAM ;
") or die mysql_error();
?>
da verificare il formato del campo data che deve essere uguale a quello che ricavi per la data in $oggi
verificata che la tabella sia stata creata puoi (anzi meglio) lo elimini

:eek: Grazie adesso provo, mi stavo già inalberando con questa guida :D
 
Discussioni simili
Autore Titolo Forum Risposte Data
felino Script PHP per leggere un file JSON. autenticazione? PHP 4
romeocharly [PHP] Script per rinominare in automatico le immagini inviate da ftp PHP 0
A [PHP] Script con array con numeri che iniziano per 00 PHP 2
TpD [PHP] Script per organizzazione presenza eventi PHP 3
webmachine [PHP] Script per censurare parole PHP 4
M [PHP] Script per controllo disponibilitá negozio in citta PHP 4
K Script PHP per leggere array.txt Presentati al Forum 3
Mauro Guardiani [PHP] script per caricamento video PHP 0
romeocharly Creare un script/codice in php per collegare un id mysql con un file PHP 0
xone [Vendo] Script php+mysql autocostruito per gestione giacenze magazzino Offerte e Richieste di Lavoro e/o Collaborazione 0
F Script php per IP camera PHP 12
IImanuII Licenza per script in PHP PHP 2
S aiuto per script PHP/OOP PHP 2
filippino Script PHP per estrarre dati estrazioni da sito "10 e lotto" PHP 0
K creare uno script in php , per generare in modo automatico query PHP 2
S countdown in php e script per aprire 2 siti contemporanemante PHP 1
U php-mysql script per convertire valori $_POST PHP 2
H Script php per link 'Aggiungi agli amici'? PHP 34
T [Offro Lavoro] CERCASI PROGRAMMATORE PHP per singoli script Offerte e Richieste di Lavoro e/o Collaborazione 2
V Script per distanza indirizzi [era: Script Php che non capisco se funzioni !] PHP 2
C script php per posizionamento su google PHP 0
R script per redirect php ad orari stabiliti PHP 31
M Script php per cancellare file PHP 1
K Script in PHP per gestione sito da utente PHP 6
A cerco script php per sincro db mysql CMS (Content Management System) 4
M Editare uno script php per arricchirlo PHP 9
M php script per classifica PHP 2
Z query sql e script php per ordinamento dati tabella PHP 2
U aiuto per script php inviare una mail PHP 1
SolidSnake4 miglior script per l'upload di immagini con php su DB PHP 5
H Php script per i .swf giochini PHP 0
G Script php per invio email con controllo sintassi e record MX PHP 0
G Script php per invio email con controllo sintassi e record MX PHP 7
S Script per creare Email in PHP PHP 1
M MySQL e PHP: script particolare per vBulletin! PHP 43
P lanciare script asp (o php) da jquery Javascript 1
G [PHP] Creare script di prenotazione con controllo disponibilità. PHP 7
M Collegamento tra form html e script php PHP 4
felino PHP e script generazione file excel PHP 2
R Primo script in PHP / CSS PHP 4
T [a pagamento] programmatore PHP che mi aiuti a migrare gli script da vecchia versione PHP a nuova Offerte e Richieste di Lavoro e/o Collaborazione 1
Max 1 [PHP] Script che funziona in locale e non online PHP 16
K Help: problema con uno script di booking in php! PHP 0
O [PHP] inviare dati da form e script ajax PHP 0
P [PHP] Aggiungere un mio script a prestashop? PHP 10
D [Javascript] inserire uno script in un file php Javascript 6
Gabriele15497514 php testo errato durante la lettura del file txt quando lo script viene eseguito contemporaneamente PHP 3
D [PHP] script che invii una mail automatica dopo risposta ad una discussione di un forum PHP 0
T interpretare uno script php non fatto da me... PHP 3
O Script PHP e loro visibilità PHP 4

Discussioni simili