Foros del Web » Programando para Internet » PHP »

Interactuar variables Javascript con PHP by Sixtux

Estas en el tema de Interactuar variables Javascript con PHP by Sixtux en el foro de PHP en Foros del Web. Este es una pequeña forma de como solucione un problema, en la interacción del lenguaje JavaScript y PHP, batalle mucho y busque miles y miles ...
  #1 (permalink)  
Antiguo 16/07/2010, 13:53
 
Fecha de Ingreso: julio-2010
Mensajes: 4
Antigüedad: 13 años, 9 meses
Puntos: 0
Información Interactuar variables Javascript con PHP by Sixtux

Este es una pequeña forma de como solucione un problema, en la interacción del lenguaje JavaScript y PHP, batalle mucho y busque miles y miles de tutoriales y despues de una semana a medio dormir, y todos los discos de AC/DC,,, y Unos cuantos de Bunbury jajaja aqui esta la respuesta, espero lograrme explicar bien y espero que a alguien en un futuro no muy lejano le sirva y lo saque de un apuro.



A empesar:

El codigo fue echo en DreamWeaber 8 algo viejito jejeje , y con la herramienta EasyPHP 5.2.10

Javascript: es un lenguaje que se ejecuta en cualquier navegador
PHP: es un lenguaje que solo se ejecuta del lado del servidor

Despues de esta pequeña explicación, para comprender como interactuar los lenguajes, sigue lo practico:
////////////////////////////////////////////////////////////////////////////////////////////////////////

<head>
<script language="javascript">
function Boton(Tipo){
document.funciones.opcion.value=Tipo;
}
function PasarInf (Id,Nom,APat,APmat,Sex,PadTut,EscP,PromF){
document.funciones.BAgregar.disabled = true; /*Esto es para que unos botones se aviliten y otros se desaviliten*/
document.funciones.BModificar.disabled = false;
document.funciones.BBorrar.disabled = false;
document.funciones.Id_Asignado.disabled = true;
document.funciones.Id.value=Id;
document.funciones.Id_Asignado.value=Id;
document.funciones.Nombre_Alumno.value=Nom;
document.funciones.Apellido_Paterno.value=APat;
document.funciones.Apellido_Materno.value=APmat;
document.funciones.Sexo.value=Sex;
document.funciones.Padre_Tutor.value=PadTut;
document.funciones.Escuela_Procedencia.value=EscP;
document.funciones.Promedio_Final.value=PromF;
}
function Limpiar(){document.location='Inscripcion.php';}
function Salir(){document.location='indexDetalle.html';}
</script>
</head>

en esta parte, estan las funciones javascript, a las que mando llamar con los botones, con OnClik.

la funcion Boton; recive una variable tipo, la cual la pasa en un campo type="hidden" , para despues tomarla con PHP y utilizarla, esto se hace renombrando el formulario, el cual esta redirijido a si mismo por la accion action="<?PHP $_SERVER['PHP_SELF']?>".

///////////////////////////////////////////////////////////////////////////////////////////////////////
esto es el body

<form method='POST' action="<?PHP $_SERVER['PHP_SELF']?>" name="funciones" id="funciones">
<table width = "150" border = "0">
<tr>
<td nowrap="nowrap"><span class="Estilo1">Id Asignado</span></td>
<td><input id="Id_Asignado" type="text" name="Id_Asignado" /></td>
</tr>
<tr>
<td nowrap="nowrap"><span class="Estilo1">Nombre Del Alumno</span></td>
<td><input id="Id_Nombre" type="text" name="Nombre_Alumno" /></td>
</tr>
<tr>
<td nowrap="nowrap"><span class="Estilo1">Apellido Paterno</span></td>
<td><input id="Id_Paterno" type="text" name="Apellido_Paterno" /></td>
</tr>
<tr>
<td nowrap="nowrap"><span class="Estilo1">Apellido Materno</span></td>
<td><input id="Id_Materno" type="text" name="Apellido_Materno" /></td>
</tr>
<tr>
<td nowrap="nowrap"><span class="Estilo1">Sexo</span></td>
<td>
<SELECT NAME="Sexo" SIZE="1">
<OPTION VALUE=""></OPTION>
<OPTION VALUE="Femenino">Femenino</OPTION>
<OPTION VALUE="Masculino">Masculino</OPTION>
</SELECT></td>
</tr>
<tr>
<td nowrap="nowrap"><span class="Estilo1">Padre o Tutor</span></td>
<td><input id="Id_Padre" type="text" name="Padre_Tutor" /></td>
</tr>
<tr>
<td nowrap="nowrap"><span class="Estilo1">Escuela de Procedencia</span></td>
<td><input id="Id_Escuela" type="text" name="Escuela_Procedencia" /></td>
</tr>
<tr>
<td nowrap="nowrap"><span class="Estilo1">Promedio Final</span></td>
<td><input id="Id_Promedio" type="text" name="Promedio_Final" /></td>
</tr>
</table>
<p>&nbsp; </p>
<p>
<input type="submit" value="Agregar" name="BAgregar" id="bAgregar" onClick="javascript:Boton(1);" >
<input type="submit" value="Modificar" name="BModificar" onClick="javascript:Boton(2);" id="bModificar" disabled >
<input type="submit" value="Borrar" name="BBorrar" onClick="javascript:Boton(3);" id="bBorrar" disabled >
<input type="submit" value="Consultar" name="BConsultar" onClick="javascript:Boton(4);" id="bBorrar" >
<input type="reset" value="Limpiar" name="BNuevo" id="cmdNuevo" onClick="javascript:Limpiar();" >
<input type="button" value="Salir" name="BSalir" id="cmdSalir" onClick="javascript: Salir();" >

<input id="Id" type="hidden" name="Id" value="<?PHP $id = $_POST['Id'];?>">
<input id="opcion" type="hidden" name="opcion" value="<?PHP $option = $_POST['opcion'];?>">
</p>
</form>

En esta parte esta el formulario, donde se pueden ver los botones y su funcionalidad, tambien se puede ver los campos hidden, para obtener valores que luego utilizamos en PHP, y el nombre de los campos.

////////////////////////////////////////////////////////////////////////////////////////////////////////
Aqui tenemos el codigo PHP, la interaccion, es facil, al dar clik en algun boton, este pasa el valor a la funcion javascript el cual lo toma y lo pone en el campo "opcion", del type"hidden" este tipo oculta los balores pues no es nada que tengamos que mostrar, despues en PHP tomamos el valor con el metodo POST, y asi ya tenemos una variable que paso por javascript y la utilizamos en PHP.
las funciones pues hay estan el ABC de cualquier programa Agregar, Borrar, Cambiar.

<?PHP
error_reporting(0);
$id_asignado = $_POST['Id_Asignado']; /*Obtenemos los valoeres*/
$nom_alumno = $_POST['Nombre_Alumno']; /*Para poderlos utilizar*/
$ape_paterno = $_POST['Apellido_Paterno'];
$ape_materno = $_POST['Apellido_Materno'];
$sexo = $_POST['Sexo'];
$pad_tut = $_POST['Padre_Tutor'];
$esc_proc =$_POST['Escuela_Procedencia'];
$prom = $_POST['Promedio_Final'];
$ip = 'localhost';
$usuario = 'root'; /*En estas lineas pones tu clave y contraseña de tu MySql*/
$password = ''; /*Si no lo as configurado haci deja los datos*/
$db_name = 'Bachilleres_DPSW';
$conn = mysql_pconnect($ip,$usuario,$password) or die("No Hay Conexion");
$conexion = mysql_select_db($db_name,$conn) or die("Conexion no establecida");

switch($option) /*Opcion que recojemos del input id="opcion" type="hidden"*/
{
case 1:

$sql = "INSERT INTO `Bachilleres_DPSW`.`alumno` (`Id_Alumno`, `IdAsignado`, `Nombre_Alumno`, `Apellido_Paterno`, `Apellido_Materno`, `Sexo`, `Padre_Tutor`, `Esc_Pro`, `Promedio_Final`) VALUES (NULL,'$id_asignado','$nom_alumno','$ape_paterno', '$ape_materno','$sexo','$pad_tut','$esc_proc','$pr om');";
$response = mysql_query($sql, $conn);
break;
case 2:
$sql = "UPDATE `bachilleres_dpsw`.`alumno` SET `Nombre_Alumno` = '$nom_alumno', `Apellido_Paterno`='$ape_paterno', `Apellido_Materno`='$ape_materno', `Sexo`='$sexo', `Padre_Tutor`='$pad_tut', `Esc_Pro`='$esc_proc', `Promedio_Final` = '$prom' WHERE `alumno`.`IdAsignado` = '$id';";
$response = mysql_query($sql, $conn);
break;
case 3:
$sql = "DELETE FROM `bachilleres_dpsw`.`alumno` WHERE `alumno`.`IdAsignado` = '$id';";
$response = mysql_query($sql, $conn);
break;
case 4:

$sql = "SELECT * FROM `Alumno`";
$response = mysql_query($sql, $conn);

if ($row = mysql_fetch_array($response))
{

echo '<table width = "150" border = "1">';
echo '<tr bgcolor="#999999"><td nowrap="nowrap"><span class="Estilo1">Id Asignado</span></td>';
echo '<td nowrap="nowrap"><span class="Estilo1">Nombre Del Alumno</span></td>';
echo '<td nowrap="nowrap"><span class="Estilo1">Apellido Paterno</span></td>';
echo '<td nowrap="nowrap"><span class="Estilo1">Apellido Materno</span></td>';
echo '<td nowrap="nowrap"><span class="Estilo1">Sexo</span></td>';
echo '<td nowrap="nowrap"><span class="Estilo1">Padre o Tutor</span></td>';
echo '<td nowrap="nowrap"><span class="Estilo1">Escuela de Procedencia</span></td>';
echo '<td nowrap="nowrap"><span class="Estilo1">Promedio Final</span></td>';
echo '</tr>';
do{
echo '<tr><td nowrap="nowrap"><a href="#" onClick="JavaScript:PasarInf(\''.$row["IdAsignado"].'\',\''.$row["Nombre_Alumno"].'\',\''.$row["Apellido_Paterno"].'\',\''.$row["Apellido_Materno"].'\',\''.$row["Sexo"].'\',\''.$row["Padre_Tutor"].'\',\''.$row["Esc_Pro"].'\',\''.$row["Promedio_Final"].'\');">';
echo '<span class="Estilo1">'.$row["IdAsignado"].'</span></a></td>';
echo '<td nowrap="nowrap"><span class="Estilo1">'.$row["Nombre_Alumno"].'</span></td>';
echo '<td nowrap="nowrap"><span class="Estilo1">'.$row["Apellido_Paterno"].'</span></td>';
echo '<td nowrap="nowrap"><span class="Estilo1">'.$row["Apellido_Materno"].'</span></td>';
echo '<td nowrap="nowrap"><span class="Estilo1">'.$row["Sexo"].'</span></td>';
echo '<td nowrap="nowrap"><span class="Estilo1">'.$row["Padre_Tutor"].'</span></td>';
echo '<td nowrap="nowrap"><span class="Estilo1">'.$row["Esc_Pro"].'</span></td>';
echo '<td nowrap="nowrap"><span class="Estilo1">'.$row["Promedio_Final"].'</span></td>';
echo '</tr>';
}while ($row = mysql_fetch_array($response));
echo '</table>';
}
break;
}

?>

esto es grasias a que renombramos la pagina varias veces con el metodo <?PHP $_SERVER['PHP_SELF']?> el cual contien la direccion de la pagina en la que estamos trabajando si quieren ver lo que contien adan un <?PHP echo $_SERVER['PHP_SELF']?> y podran ver la informacion que este tiene.

espero que a alguien le sirva de algo, por lo menos ami me sirvio para reafirmar el conocimiento,,,,,,,,,,,,,,,,,,,,, jajaja ,,,,,, si tienen alguna duda o comentario, pues lo pueden hacer aqui, o les dejo mi correo [email protected].



-------------------------Live Free Or Die ----- LINUX------- Comparte Conocimiento ------
----------Todos somos ignorantes, pero no todos ignoramos la misma cosa-----------
  #2 (permalink)  
Antiguo 16/07/2010, 14:04
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: Interactuar variables Javascript con PHP by Sixtux

bueno, nada que no este dicho en el manual oficial de PHP, también en las FAQ's y Wiki del foro de PHP...

además, esto es una completa falacia!!
Cita:
esto es grasias a que renombramos la pagina varias veces con el metodo <?PHP $_SERVER['PHP_SELF']?> el cual contien la direccion de la pagina en la que estamos trabajando si quieren ver lo que contien adan un <?PHP echo $_SERVER['PHP_SELF']?> y podran ver la informacion que este tiene.
si no pones ningún echo, no sirve de nada poner <?PHP $_SERVER['PHP_SELF']?> pues en el código HTML que resulta no sale nada impreso ahí...

y eso es el equivalente a action="", que, si te hubieras tomado el tiempo de estudiar algo de HTML y formularios, notarías que es el equivalente al <?PHP echo $_SERVER['PHP_SELF']?> (si, con echo)

que es igual a esto:
Código PHP:
<?PHP $id $_POST['Id'];?>
ya que así tampoco sirve, solo es una asignación... en ningún lugar imprimes dicho valor con echo (si no me crees revisa el HTML generado) ¡¡las variables no se imprimen solas!!!

¡¡suerte para la próxima!!
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #3 (permalink)  
Antiguo 16/07/2010, 14:16
 
Fecha de Ingreso: julio-2010
Mensajes: 4
Antigüedad: 13 años, 9 meses
Puntos: 0
Respuesta: Interactuar variables Javascript con PHP by Sixtux

poner un un echo, es solo para ver la url que contien $_SERVER['PHP_SELF'] no tiene que ver nada con el formulario, y el formulario anda muy bien sin tener que poner "echo $_SERVER['PHP_SELF']",,,,,, solo poniendo $_SERVER['PHP_SELF'] se redirecciona, que es lo que busco para pasar las variables a los campos.

no se cual es tu problema, por que el formulario anda muy bien, y funciona bien, ahora solo es un ejemplo, ovio hay miles y miles de tutoriales que pueden ver, y es mejor que este pequeño ejemplo que pongo, solo es un aportacion, no para expertos sino para novatos que dan pasos a siegas.................
  #4 (permalink)  
Antiguo 16/07/2010, 14:20
 
Fecha de Ingreso: junio-2010
Ubicación: Venezuela, Zulia
Mensajes: 686
Antigüedad: 13 años, 10 meses
Puntos: 55
Respuesta: Interactuar variables Javascript con PHP by Sixtux

hey pero coloca tu web para ver como funciona el formulario
  #5 (permalink)  
Antiguo 16/07/2010, 14:27
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: Interactuar variables Javascript con PHP by Sixtux

Cita:
Iniciado por SixtuX Ver Mensaje
poner un un echo, es solo para ver la url que contien $_SERVER['PHP_SELF'] no tiene que ver nada con el formulario, y el formulario anda muy bien sin tener que poner "echo $_SERVER['PHP_SELF']",,,,,, solo poniendo $_SERVER['PHP_SELF'] se redirecciona, que es lo que busco para pasar las variables a los campos.

no se cual es tu problema, por que el formulario anda muy bien, y funciona bien, ahora solo es un ejemplo, ovio hay miles y miles de tutoriales que pueden ver, y es mejor que este pequeño ejemplo que pongo, solo es un aportacion, no para expertos sino para novatos que dan pasos a siegas.................
yo solo digo, que si quitas <?php $_SERVER['PHP_SELF']?> va a funcionar igual... pues una variable así no mas es absurda... si no la vas a imprimir, no la pongas!!

y... lo mismo pasa con:
Código PHP:
<?PHP $id $_POST['Id'];?>
yo no dije que tuviera problemas con nada... solo te sugería que deberías de leer el manual antes de asegurar cosas que no tienen nada que ver con la realidad del lenguaje....

pon atención a lo que digo, es solo una critica constructiva... ;)

--
además, como nota técnica que pasa si desactivo el Javascript de mi navegador, ¿tu formulario aún funciona??

yo no lo veo utilidad a un formulario que dependa de Javascript, cuando con solo HTML puedes conseguir lo mismo, naturalmente:

- http://www.php.net/variables.external

y por si aún gustas investigar, la mejor forma de interactuar con PHP+JS=Ajax
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #6 (permalink)  
Antiguo 16/07/2010, 14:45
 
Fecha de Ingreso: julio-2010
Mensajes: 4
Antigüedad: 13 años, 9 meses
Puntos: 0
Respuesta: Interactuar variables Javascript con PHP by Sixtux

Aceptando tu critica e cambiado de <?php $_SERVER['PHP_SELF']?>


<form method='POST' action="Inscripcion.php" name="funciones" id="funciones">


al igual funciona igual.....................................


Y grasias por las criticas ,,,, en un mundo sin criticas todos seriamos disque buenos jajajajajajajaja

Etiquetas: javascript, variables
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 18:26.