Precedente :: Successivo |
Autore |
Messaggio |
xbandx Eroe

Registrato: 31/05/06 22:12 Messaggi: 41
|
Inviato: 29 Mar 2007 17:29 Oggetto: richiamo il modulo in php...... |
|
|
avrei la necessita' di richiamo il modulo in php...... dopo aver controllato delle variabili tramite un switch case es:
Codice: | switch($captcha->validate_submit($_POST['image'],$_POST['validcode']))
{
// form was submitted with incorrect key
case 0:
echo '<p><br/>Spiacente il codice inserito era errato!!!.';
echo '<br/><br/><a href="'.$_SERVER['PHP_SELF'].'">Riprova con il modulo Contatti</a></p>';
break;
// form was submitted and has valid key
case 1:
richiamo il modulo in php......
//include('formproc30/formproc.php');
break;
} |
sono su dominio linux.
come posso fare?
edit by kluster: il codice mettilo tra tag CODE |
|
Top |
|
 |
kluster Dio maturo

Registrato: 15/04/06 13:14 Messaggi: 2898
|
Inviato: 29 Mar 2007 17:33 Oggetto: |
|
|
cosa intendi per richiamare, ritornare indietro al modulo se lui sbaglia?
mettere semplicemente l'indirizzo o il referer o anche un history.back() in js?
ma nel caso:
Codice: | Case 0:
echo '<p><br/>Spiacente il codice inserito era errato!!!.';
echo '<br/><br/><a href="'.$_SERVER['PHP_SELF'].'">Riprova con il modulo Contatti</a></p>'; |
non c'è già? |
|
Top |
|
 |
xbandx Eroe

Registrato: 31/05/06 22:12 Messaggi: 41
|
Inviato: 29 Mar 2007 17:40 Oggetto: |
|
|
mi sono spiegato male forse..
ho un modulo form contatti con l'inserimento del codice che appare in una immagine per evitare spammer.
quano l'utente compila il modulo io primo devo controllare se il codice immesso e' corretto poi devo eseguire il modulo di invio posta. questo controllo lo facevo con uno switch case.
grazie |
|
Top |
|
 |
kluster Dio maturo

Registrato: 15/04/06 13:14 Messaggi: 2898
|
Inviato: 29 Mar 2007 17:58 Oggetto: |
|
|
Forse devo smettere di farmi gli svuotini, ma non mi è chiaro:
il codice che hai postato, non è quello che stai chiedendo?
(levando il commento all'include) |
|
Top |
|
 |
xbandx Eroe

Registrato: 31/05/06 22:12 Messaggi: 41
|
Inviato: 29 Mar 2007 18:03 Oggetto: |
|
|
ok questo e' il codiche che ho implementato ora.
nel ecchio form (vedi commento html) facevo riferimento al metodo post del form passandolo al file formproc30/formproc.php mentre ora vorrei rima controllare la validita' del codice e poi passarlo al modulo formproc30/formproc.php.
come posso fare?
Codice: | <?PHP
require_once('b2evo_captcha/b2evo_captcha.config.php');
require_once('b2evo_captcha/b2evo_captcha.class.php');
//Initialize the captcha object with our configuration options
$captcha =& new b2evo_captcha($CAPTCHA_CONFIG);
if (isset($_POST['image'])) {
switch($captcha->validate_submit($_POST['image'],$_POST['validcode']))
{
// form was submitted with incorrect key
case 0:
echo '<p><br/>Spiacente il codice inserito era errato!!!.';
echo '<br/><br/><a href="'.$_SERVER['PHP_SELF'].'">Riprova con il modulo Contatti</a></p>';
break;
// form was submitted and has valid key
case 1:
include('formproc30/formproc.php');
echo '<p><br>Congratulations. You will get the resource now.';
echo '<br><br><a href="'.$_SERVER['PHP_SELF'].'">New DEMO</a></p>';
break;
}
}
else {
$imgLoc = $captcha->get_b2evo_captcha();
echo '<form name="myForm" class="myForm" enctype="multipart/form-data" action="'.$_SERVER['PHP_SELF'].'" method="POST">'."\n";
?>
<!--<form action="formproc30/formproc.php" method="post" name="myForm" class="myForm" enctype="multipart/form-data">
-->
<fieldset>
<legend>Modulo di richiesta Informazioni</legend>
<p>
<label for="name" accesskey="n">Nome: <small>( Richiesto ) </small> </label>
<input type="text" id="nomeutente" name="nomeutente" tabindex="1" title="Nome Utente" />
</p>
<p>
<label for="url" accesskey="c">Cognome:</label>
<input name="cognomeutente" type="text" id="cognomeutente" tabindex="2" title="Cognome Utente" />
</p>
<p>
<label for="email" accesskey="e">Email: <small>( Non si mostrera' ) </small></label>
<input type="text" id="emailutente" name="email" tabindex="3" title="Email Utente" />
</p>
<p class="center">Numero di caratteri: <span id="contador">500</span></p>
<p>
<label for="comentario" accesskey="c">Commenti: </label>
<textarea onkeyup="string(this,500,'contador');" onkeydown="string(this,500,'contador');" onblur="string(this,500,'contador');" name="textutente" id="textutente" tabindex="4" title="Inserire un commento"></textarea>
</p>
<p>Inserisci nel campo Codice di Verfica la sequenza dei 7 simboli apparsi nell'immagine qui sotto, questo per limitare al massimo gli Spammer robots.</p>
<?PHP
echo '<img src="'.$imgLoc.'" alt="This is a captcha-picture. It is used to prevent mass-access by robots." title=""/><br/>'."\n";
echo '<input type="hidden" name="image" value="'.$imgLoc.'"/>'."\n";
echo '<label for="email" accesskey="V">Codice di Verifia: <small>( Obbligatorio per evitare Spammer!!! ) </small></label>';
echo '<input type="text" id="code" name="validcode" value="" tabindex="4" title="Codice di Verifia" size="10"/>';
?>
<p>
<input type="hidden" name="form_id" value="form_contatti">
<input name="Submit" type="submit" class="button" id="submit" tabindex="5" value="Invia il commento" />
</p>
</fieldset>
</form>
<?PHP
}
?> |
|
|
Top |
|
 |
kluster Dio maturo

Registrato: 15/04/06 13:14 Messaggi: 2898
|
Inviato: 29 Mar 2007 18:25 Oggetto: |
|
|
ti tocca duplicare il codice del form nel case 0 |
|
Top |
|
 |
SverX Supervisor Macchinisti


Registrato: 25/03/02 12:16 Messaggi: 11806 Residenza: Tokelau
|
Inviato: 29 Mar 2007 19:13 Oggetto: |
|
|
kluster ha scritto: | Forse devo smettere di farmi gli svuotini, ma non mi è chiaro |
giuro non sto capendo manco io... tu prima avevi un
Codice: | form action="formproc30/formproc.php" |
nella form mentre adesso mandi il contenuto del form ad una pagina php che ti verifica il captcha e poi vuoi che in caso di verifica ok tutti gli altri dati vadano a finire al vecchio formproc.php?
non puoi fare un redirect di un POST, almeno credo...
ti conviene prendere il codice che era scritto dentro il formproc.php che riceveva i dati dal form e copiarlo nel "case 1:"... |
|
Top |
|
 |
xbandx Eroe

Registrato: 31/05/06 22:12 Messaggi: 41
|
Inviato: 29 Mar 2007 19:15 Oggetto: |
|
|
ci provo....
eventualmente per fare un redirect di un post di un form come faccio? |
|
Top |
|
 |
SverX Supervisor Macchinisti


Registrato: 25/03/02 12:16 Messaggi: 11806 Residenza: Tokelau
|
Inviato: 29 Mar 2007 19:23 Oggetto: |
|
|
xbandx ha scritto: | ci provo....
eventualmente per fare un redirect di un post di un form come faccio? |
appunto dicevo non so se si può fare... (facilmente)... nel senso che se tu mettessi al posto dell'include un http_redirect () andresti sì sulla pagina giusta ma ci arriveresti senza i dati...  |
|
Top |
|
 |
xbandx Eroe

Registrato: 31/05/06 22:12 Messaggi: 41
|
Inviato: 29 Mar 2007 23:38 Oggetto: |
|
|
problema ...... appena inserisco l'include che era presente nel modulo php di gestione dei dati del form mi ritorna questo errore ancora prima di visualizzare la pagina:
No input to work on! $HTTP_POST_VARS and $HTTP_GET_VARS empty |
|
Top |
|
 |
xbandx Eroe

Registrato: 31/05/06 22:12 Messaggi: 41
|
Inviato: 01 Apr 2007 00:42 Oggetto: |
|
|
Risolto cosi:
<?PHP
require_once('b2evo_captcha/b2evo_captcha.config.php');
require_once('b2evo_captcha/b2evo_captcha.class.php');
//Initialize the captcha object with our configuration options
$captcha =& new b2evo_captcha($CAPTCHA_CONFIG);
if (isset($_POST['image']))
{
switch($captcha->validate_submit($_POST['image'],$_POST['validcode']))
{
// form was submitted with incorrect key
case 0:
echo '<p><img src="images/lock_fail.png" alt="" /> Spiacente il codice di verifica inserito era errato!!!</p>';
echo '<br/><br/><a href="'.$_SERVER['PHP_SELF'].'">Riprova con il modulo Contatti</a></p>';
break;
// form was submitted and has valid key
case 1:
/*Here we are going to declare the variables*/
$nomeutente = $_POST['nomeutente'];
$cognomeutente = $_POST['cognomeutente'];
$clean = array();
if (ctype_alnum($_GET['email']))
{
$clean['email'] = $_GET['email'];
$email = $_POST['email'];
}else
{
$email = $_POST['email'];
}
//$html = array();
//$html['username'] = htmlentities($clean['username'],ENT_QUOTES, 'UTF8');
//echo "<p>Bentornato, {$html['username']}.</p>";
if(chkEmail($email))
{
$message = $_POST['textutente'];
//Save visitor name and entered message into one variable:
$formcontent="Nome Visitatore: $nomeutente $cognomeutente\n\nMessaggio Lasciato: $message";
$recipient = "webmaster@sito.it";
$subject = "Richiesta Informazioni dal Sito [www.sito.it]";
$mailheader = "From: $email\r\n";
$mailheader .= "Reply-To: $email\r\n";
$mailheader .= "MIME-Version: 1.0\r\n";
mail($recipient, $subject, $formcontent, $mailheader) or die("Failure!");
echo '<p><img src="images/scroll_ok.png" alt="" /> Messaggio spedito correttamente!!</p>';
echo '<br><br><a href="'.$_SERVER['PHP_SELF'].'">Nuovo Messaggio</a></p>';
}else
{
echo '<p><img src="images/email_warning.png" alt="" /> Spiacente indirizzo Email inserito era errato!!!</p>';
echo '<br/><br/><a href="'.$_SERVER['PHP_SELF'].'">Riprova con il modulo Contatti</a></p>';
}
break;
}
}
else {
echo '<p><strong><b><font face="Arial" color="#336699">Potete contattarci compilando il presente modulo </font></b></strong></p>';
echo '<p><img src="images/info.png" alt="" /></p>';
$imgLoc = $captcha->get_b2evo_captcha();
echo '<form name="myForm" class="myForm" enctype="multipart/form-data" action="'.$_SERVER['PHP_SELF'].'" method="POST">'."\n";
?>
<?php
function chkEmail($email)
{
$email = trim($email);
if($email != "") {
// la stringa rispetta il formato classico di una mail?
if(!preg_match( '/^[\w\.\-]+@\w+[\w\.\-]*?\.\w{1,4}$/', $email))
return false;
else return true;
}
else return false;
}
?> |
|
Top |
|
 |
|