Ver Mensaje Individual
  #1 (permalink)  
Antiguo 20/02/2007, 15:05
Avatar de BooMeranGz
BooMeranGz
 
Fecha de Ingreso: febrero-2001
Mensajes: 350
Antigüedad: 23 años, 2 meses
Puntos: 0
Exclamación No puedo incluir <? echo x; ?> en un script java...

Hola gente,

No se si va en esta sección, pero creo que si, ya que el problema lo tengo con variables de PHP dentro de javascript.

Estoy usando un formulario y en el valido los datos de cada campo ingresado con javascript.

Como es un formulario multilenguaje, en otros files defino constantes del tipo:

Código PHP:
<?
define
("errMsg01""ERROR: Debe copiar el 'texto de verificación' para continuar.");
define("errMsg02""ERROR: El campo 'Información a solicitar:' es Obligatorio.<br>Por favor escriba la información que desea solicitar");
define("errMsg09""ERROR: El campo 'Nombre:' es Obligatorio. Por favor escriba su nombre");
?>
Y en esta página del formulario necesito que esas constantes de php sean reemplazadas en cada mensaje de error emitido.

Esto me funciona bien en todo el sitio, pero no para este javascript.

Quiero aclarar que este java lo hice con una extensión de Dreamweaver, yo de java no se casi nada.

Bueno, en si, este es el script que valida:

Código HTML:
<script language="Javascript">
<!--
function VF_formulario(){ //v2.0
var theForm = document.formulario;
var alphaRE = /^[a-zA-Z0-9]+$/;
var emailRE = /^([a-zA-Z0-9_.-])+@(([a-zA-Z0-9-])+.)+([a-zA-Z0-9]{2,4})+$/;
var userRE5 = new RegExp("^((0)|(1)|(2)|(3)|(4)|(5)|(6)|(7)|(8)|(9)|(-)|(\\()|(\\))|(\\[)|(]))+$","g");
var userRE4 = new RegExp("^((0)|(1)|(2)|(3)|(4)|(5)|(6)|(7)|(8)|(9)|(-)|(\\()|(\\))|(\\[)|(]))+$","g");
var errMsg = "";
var setfocus = "";

if (theForm['txtRandImage'].value == ""){
    errMsg = "ERROR: Debe copiar el \'texto de verificación\' para continuar\.";
    setfocus = "['txtRandImage']";
}

if (theForm['infosolicitada'].value == ""){
    errMsg = "ERROR: El campo \'Información a solicitar:\' es Obligatorio\. Por favor escriba la información que desea solicitar\.";
    setfocus = "['infosolicitada']";
}

if (theForm['seltel'].checked){
 if (theForm['tel'].value == "" && theForm['telcel'].value == ""){
        errMsg = "ERROR: No puede seleccionar la casilla \'Teléfono\' en \'¿Su preferencia de contacto?\' si no ha ingresado ningún número telefónico anteriormente. Por favor, ingrese algún número telefónico si desea ser contactado por esta vía\.";
        setfocus = "['seltel']";
    }
}

if (theForm['telcel'].value != ""){
    if (!userRE5.test(theForm['telcel'].value)){
        errMsg = "ERROR: El campo \'Teléfono celular:\' solo PERMITE los caracteres \'0,1,2,3,4,5,6,7,8,9,\-,\(,\),\[,\]\'\. Por favor verifíquelo\.";
     setfocus = "['telcel']";
    }
}

if (theForm['tel'].value != ""){
    if (!userRE4.test(theForm['tel'].value)){
        errMsg = "ERROR: El campo \'Teléfono:\' solo PERMITE los caracteres \'0,1,2,3,4,5,6,7,8,9,\-,\(,\),\[,\]\'\. Por favor verifíquelo\.";
        setfocus = "['tel']";
    }
}

if (theForm['emailv'].value == "" || (theForm['emailv'].value != theForm['email'].value)){
    errMsg = "ERROR: El E\-mail ingresado en \"Su E\-mail nuevamente\" no es el mismo que el que ingresó anteriormente\. Por favor verifíquelo\.";
    setfocus = "['emailv']";
}

if (!emailRE.test(theForm['email'].value)){
    errMsg = "ERROR: El campo \'E\-mail:\' es Obligatorio\. Por favor escriba su E\-mail\.";
    setfocus = "['email']";
}

if (!alphaRE.test(theForm['apellido'].value)){
    errMsg = "ERROR: El campo \'Apellido:\' es Obligatorio\. Por favor escriba su apellido\.";
    setfocus = "['apellido']";
}

if (!alphaRE.test(theForm['nombre'].value)){
    errMsg = "ERROR: El campo \'Nombre:\' es Obligatorio\. Por favor escriba su nombre\.";
    setfocus = "['nombre']";
}

if (errMsg != ""){
    alert(errMsg);
    eval("theForm" + setfocus + ".focus()");
}
else theForm.submit();
}
//-->
</script> 
Y necesito que me quede asi, con el php incluido:

Código HTML:
<script language="Javascript">
<!--
function VF_formulario(){ //v2.0
var theForm = document.formulario;
var alphaRE = /^[a-zA-Z0-9]+$/;
var emailRE = /^([a-zA-Z0-9_.-])+@(([a-zA-Z0-9-])+.)+([a-zA-Z0-9]{2,4})+$/;
var userRE5 = new RegExp("^((0)|(1)|(2)|(3)|(4)|(5)|(6)|(7)|(8)|(9)|(-)|(\\()|(\\))|(\\[)|(]))+$","g");
var userRE4 = new RegExp("^((0)|(1)|(2)|(3)|(4)|(5)|(6)|(7)|(8)|(9)|(-)|(\\()|(\\))|(\\[)|(]))+$","g");
var errMsg = "";
var setfocus = "";

if (theForm['txtRandImage'].value == ""){
    errMsg = "<? echo $errMsg01; ?>";
    setfocus = "['txtRandImage']";
}

if (theForm['infosolicitada'].value == ""){
    errMsg = "<? echo $errMsg02; ?>";
    setfocus = "['infosolicitada']";
}

if (theForm['seltel'].checked){
 if (theForm['tel'].value == "" && theForm['telcel'].value == ""){
        errMsg = "<? echo $errMsg03; ?>";
        setfocus = "['seltel']";
    }
}

if (theForm['telcel'].value != ""){
    if (!userRE5.test(theForm['telcel'].value)){
        errMsg = "<? echo $errMsg04; ?>";
     setfocus = "['telcel']";
    }
}

if (theForm['tel'].value != ""){
    if (!userRE4.test(theForm['tel'].value)){
        errMsg = "<? echo $errMsg05; ?>";
        setfocus = "['tel']";
    }
}

if (theForm['emailv'].value == "" || (theForm['emailv'].value != theForm['email'].value)){
    errMsg = "<? echo $errMsg06; ?>";
    setfocus = "['emailv']";
}

if (!emailRE.test(theForm['email'].value)){
    errMsg = "<? echo $errMsg07; ?>";
    setfocus = "['email']";
}

if (!alphaRE.test(theForm['apellido'].value)){
    errMsg = "<? echo $errMsg08; ?>";
    setfocus = "['apellido']";
}

if (!alphaRE.test(theForm['nombre'].value)){
    errMsg = "<? echo $errMsg09; ?>";
    setfocus = "['nombre']";
}

if (errMsg != ""){
    alert(errMsg);
    eval("theForm" + setfocus + ".focus()");
}
else theForm.submit();
}
//-->
</script> 
Creo que se entiende.

Si alguien me tira una ayuda se lo agradeceré, ya que estoy enredado con esto y no se como sacarlo adelante.

Muchas gracias de antemano.

Salu2.