flash data integration:
Hello everybody:
I have a registration form in Flash that sends the data to a PHP file which in
turn sends it to a database. The problem is that I have two validation rules
for the name (can't be less than 3 characters) and the email (x@x.x). When I
insert the data the PHP file has to check if the rules are complied with and
returns a variable (true or false) to Flash in order to display a success or
failure message . The thing is that no matter what I do I always get the
failure message and the data is not sent to the db. Please have a look at both
the PHP and ActionScript code below and let me know what I'm doing wrong with
the rules or maybe it's something else I can't figure out cause I will have to
repaint the wall in my room if I don't stop banging my head against it...
PHP:
<?php
$conexion=@mysql_connect(localhost,root,"Mckako01") or die (mysql_error());
$select=@mysql_select_db("formulario");
//reglas para validar nombre, email
$valNombre='/^{3,}$/i';
$valEmail='/^\w*@(+\.)+{2,4}$/i';
//recibir variables
$nombre=$_POST;
$apellido=$_POST;
$direccion=$_POST;
$email=$_POST;
$fuente=$_POST;
$comentarios=$_POST;
$noticias=$_POST;
//insert data only if validation rule is ok
if(preg_match($valNombre,$nombre) && preg_match($valEmail,$email) ){
$insertar="INSERT INTO datos
(nombre,apellido,direccion,email,fuente,comentarios,noticias) VALUES
('$nombre','$apellido','$direccion','$email','$fuente','$comentarios','$noticias
')";
$consulta=@mysql_query($insertar);
echo "&exito=true";
}else{
echo "&exito=false";
}
?>
ActionScript:
var enviar:LoadVars = new LoadVars();
enviar.onLoad = function(){
if(this.exito=="true"){
mensajeTxt.text="Sus datos han sido enviados correctamente a nuestra
base de datos";
}else{
mensajeTxt.text="Sus datos no han sido enviados";
}
}
enviar.nombre=nameTxt.text;
enviar.apellido=surnameTxt.text;
enviar.direccion=addressTxt.text;
enviar.email=emailTxt.text;
enviar.fuente=myCb.value;
if(myCheckbox.selected){
enviar.noticias=true;
}else{
enviar.noticias=false;
}
enviar.comentarios=commentTxt.text;
enterBtn.onRelease=function(){
enviar.sendAndLoad("insertar.php",enviar,"POST");
}
Million thanks,
txusm