Hi Friends,
Nicolas,
You just need to insert a simple line of javascript in your "irev"
script to call a "php" piece of code from it.
About a working example see : <http://www.woooooooords.com/
contact.irev> where the reCAPTCHA part relies on 3 simple php sniplets
and the rest of the page on irev.
In calling from a simple js snipplet directly inserted in your revTalk
code the first php sniplet, you go outside of the rev loop of your
process ;
Then, the first php sniplet call the main php function (second php
sniplet) you need to handle and have the return catched-back as your
needed irev readable $_vars
At this point, and it's up to you..., you can have a thirst php
sniplet called from the second one, etc..., as long as you need to
bind more php libs functions to the php part of your process.
Feel free to adapt the reCAPTCHA process working example as a starter
point :
the irev form :
<link rel="stylesheet" type="text/css" href="Blog/stylesheet_1.css" />
<fieldset>
<table>
<tr>
<td><label for="nom">Nom *</label></td>
<td><input class="textInput" type="text" name="nom" id="nom"></td>
</tr>
<tr>
<td><label for="entreprise">Entreprise *</label></td>
<td><input class="textInput" type="text" name="entreprise"
id="entreprise"></td>
</tr>
<tr>
<td><label for="activite">Activité *</label></td>
<td><input class="textInput" type="text" name="activite"
id="activite"></td>
</tr>
<tr>
<td><label for="adresse">Adresse</label></td>
<td><input class="textInput" type="text" name="adresse" id="adresse"></
td>
</tr>
<tr>
<td><label for="ville">Ville</label></td>
<td><input class="textInput" type="text" name="ville" id="ville"></td>
</tr>
<tr>
<td><label for="codepostal">Code postal</label></td>
<td><input class="textInput" type="text" name="codepostal"
id="codepostal"></td>
</tr>
<tr>
<td><label for="email">Email *</label></td>
<td><input class="textInput" type="text" name="email" id="email"></td>
</tr>
<tr>
<td><label for="telephone">Téléphone *</label></td>
<td><input class="textInput" type="text" name="telephone"
id="telephone"></td>
</tr>
<tr>
<td><label for="objet">Objet *</label></td>
<td><select size="1" name="objet" id="objet" style="font-size:11px;
color:gray;">
<option selected>Choisir dans la liste</option>
<option value="inédits pour sites de jeux en ligne">lots inédits
pour sites de jeux en ligne</option>
<option value="inédits pour sites à vocation
commerciale">lots inédits pour sites à vocation commerciale</option>
<option value="inédits pour sites d'information">lots inédits
pour sites d'information</option>
<option value="inédits pour sites d'information locale">lots
inédits pour sites d'information locale</option>
<option value="inédits pour sites pédagogiques">lots inédits
pour sites pédagogiques</option>
<option value="inédits pour presse de jeux">lots inédits pour
presse de jeux</option>
<option value="inédits pour presse gratuite">lots inédits pour
presse gratuite</option>
<option value="inédits pour presse de loisirs">lots inédits pour
presse de loisirs</option>
<option value="inédits pour presse généraliste">lots inédits pour
presse généraliste</option>
<option value="inédits pour presse locale">lots inédits pour
presse locale</option>
<option value="autre demande">autre demande</option>
</select></td>
</tr>
<tr>
<td><label for="detail">Détail</label></td>
<td><textarea id="detail" name="detail" rows="3"></textarea></td>
</tr>
<tr><td colspan=2 height=20></td></tr>
<tr><td colspan=2 align=right>
<script type="text/javascript">include('./recaptchaloader.php')</script>
</td></tr>
<tr><td colspan=2 height=12></td></tr>
<tr><td colspan=2 align=right>
<input type="submit" value="Envoyer" name="contact_report"
class="bouton"> ## irev handled submit button
</td></tr></table>
</fieldset>
the first .php sniplet used to bind the php $_vars to the irev handled
submit button :
<?php
require_once('recaptchatmp.php');
?>
the second .php sniplet :
<?php
require_once('recaptchalib.php');
// Get a key from http://recaptcha.net/api/getkey
$publickey = "your_revcaptcha_public_key_goes_there";
$privatekey = "your_revcaptcha_private_key_goes_there";
# the response from reCAPTCHA
$resp = null;
# the error code from reCAPTCHA, if any
$error = null;
# was there a reCAPTCHA response?
if ($_POST["recaptcha_response_field"]) {
$resp = recaptcha_check_answer ($privatekey,
$_SERVER["REMOTE_ADDR"],
$_POST["recaptcha_challenge_field"],
$_POST["recaptcha_response_field"]);
}
echo recaptcha_get_html($publickey, $error);
?>
witch call the 'recaptchalib.php' as the thirst one, etc...
the submit button irev function handler
function sc_contact_report
repeat for each key k in $_POST
if "lang_flag_mem" is not in k and "contact_report" is not in k
and \
"recaptcha_challenge_field" is not in k and
"recaptcha_response_field" is not in k
then put k & ":" && $_POST[k] & cr & cr after aaa
end repeat
put $_POST[telephone] into phonectl
filter phonectl with "*[0-9]*"
if $_POST[nom] is "" or $_POST[entreprise] is "" or $_POST[activite]
is "" or phonectl is "" \
or "@" is not in $_POST[email] or $_POST[objet] is ""
then return "<fieldset class=contact><table>" & \
sc_info_alert2("Merci de renseigner l'ensemble des champs suivis du
caractère" && quote & "*" & quote && \
"avant de poursuivre.<br><br><br>") & "</table></fieldset>" & \
"<table><tr><td height=40></td></tr></table>"
else if the num of words in $_POST[recaptcha_response_field] is not "2"
then return "<fieldset class=contact><table>" & \
sc_info_alert2("Merci de raffraichir et de compléter le
challenge" && quote & "reCAPTCHA" & quote && \
"avant de poursuivre.<br><br><br>") & "</table></fieldset>" & \
"<table><tr><td height=40></td></tr></table>"
else
set httpheaders to "Content-Type: application/x-www-form-urlencoded"
& cr & cr
post ("privatekey=your_revcaptcha_private_key_goes_there" & \
"&remoteip=" & $_server[remote_addr] & "&challenge=" &
$_POST[recaptcha_challenge_field] & \
"&response=" & $_POST[recaptcha_response_field]) to url "http://api-verify.recaptcha.net/verify
"
if "true" is in it and "success" is in it then
get mail("s...@woooooooords.com","[CONTACT] Demande d'information
services WOOOOOOOORDS.COM... [CONTACT]",aaa,"s...@woooooooords.com")
return "<fieldset class=contact><table>" & \
sc_info_alert("Cher(e)" && $_POST[nom] & ",<br><br>Votre demande
d'information nous est bien parvenue." && \
"Elle sera examinée pour suites à donner sous 48h/
jours ouvrables.<br><br>Bien cordialement,<br><br>" & \
"Pierre-Jean Sahores<br>responsable de
publication<br><br><br><br>",$_server[http_referer]) & "</table></
fieldset>" & \
"<table><tr><td height=40></td></tr></table>"
else
return "<fieldset class=contact><table>" & \
sc_info_alert2("Merci de raffraichir et de compléter le
challenge" && quote & "reCAPTCHA" & quote && \
"avant de poursuivre.<br><br><br>") &
"</table></fieldset>" & \
"<table><tr><td height=40></td></tr></table>"
end if
end if
end sc_contact_report
Hope this can help you to setup your irev driven php process
Kind Regards,
Pierre
--
Pierre Sahores
mobile : 06 03 95 77 70
www.sahores-conseil.com
Le 28 juil. 09 à 07:59, Bernard Devlin a écrit :
Years ago Pierre Sahores built an application server based on Rev. He
used Apache/PHP as the front end, then used socket connections between
PHP and Rev so that a long-running Rev process could interact with
databases, and return the results via PHP to Apache.
There is a lot to recommend in his design. He has a tutorial (in
french and english) here:
http://www2.sahores-conseil.com/insead/index_en.html
I can imagine you may not need the whole infrastructure he had in
mind, but getting the Apache/PHP/Rev stuff to work sounds like it
might be what you want, and from what I remember when I followed his
tutorial a couple of years ago, it was all straightforward.
Bernard
On Tue, Jul 28, 2009 at 4:07 AM, Nicolas Cueto<nicon...@gmail.com>
wrote:
After much testing and frustation, I've discovered that the on-rev
server is unable to read the $_POST array when sent by WAP/WML-based
Japanese cellphones to an .irev script.
As a workaround, I've make a .php script that can read in $_POST. The
next step is using php to forward the $_POST data to an .irev or
rev-cgi script -- assuming of course that such a thing is possible.
But, I really want to avoid having to learn (any more!) php, so am
instead posting this somewhat off-topic request for help.
Has someone tried to use php to relay data to .irev/rev-cgi?
Thanks.
--
Nicolas Cueto
_______________________________________________
use-revolution mailing list
use-revolution@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your
subscription preferences:
http://lists.runrev.com/mailman/listinfo/use-revolution
_______________________________________________
use-revolution mailing list
use-revolution@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your
subscription preferences:
http://lists.runrev.com/mailman/listinfo/use-revolution
_______________________________________________
use-revolution mailing list
use-revolution@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription
preferences:
http://lists.runrev.com/mailman/listinfo/use-revolution