PHP - CONSULTA IMPORTANTE

 
Vista:

CONSULTA IMPORTANTE

Publicado por GARIEL (2 intervenciones) el 08/11/2007 15:44:19
Hola tengo una duda, yo tengo un programa hecho en cobol85, y ahora estoy aprendiendo php, mi duda es si con php, puedo hacer todas las mismas validaciones de los campos como en cobol u otro programa.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:CONSULTA IMPORTANTE

Publicado por Diego Romero (1450 intervenciones) el 08/11/2007 16:12:31
Da la casualidad de que soy programador COBOL también así que puedes plantearme tu duda específica, quiero decir, concretamente qué quieres traducir de COBOL a PHP. Te adelanto que ambos lenguajes son muy diferentes.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:CONSULTA IMPORTANTE

Publicado por gariel (2 intervenciones) el 08/11/2007 20:52:09
hola diego, mi duda es: yo tengo echo un programa en rmcobol85, lo que yo quiero saber es si en php se puede validar como en cobol los accept, osea si ingreso una fecha que el dia no sea mayor a 31 y si lo ingresado es mayor que me salga un cartel que ingreso mal el dia y asi con los meses y los años.

O si yo ingreso un DNI, que verifique en mi archivo si existe sino que largue un mensaje de error. asi con todo tipo de validaciones.

Yo consulto porque recien estoy entrando al mundo de PHP.

gracias por contestar diego
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:CONSULTA IMPORTANTE

Publicado por Diego Romero (1450 intervenciones) el 09/11/2007 02:18:22
Comprendo. Bien, no, no es esa la mecánica con que trabaja PHP.

Lo que a continuación te explico es estrictamente PHP e interfaz web.

Bien pues, con PHP estás trabajando en ambiente web cliente-servidor, esto quiere decir que el servidor no hace nada a menos que el cliente le pida hacer algo. El cliente le pide al servidor mediante dos tipos de peticiones: GET y POST, la implementación de estas peticiones las hace el navegador y el servidor responde entregando un documento HTML al navegador. Es el servidor quien ejecuta PHP, no el cliente, de hecho el cliente no tiene por qué saber que es PHP quien crea las respuestas en HTML.

Vamos con el caso concreto que preguntas.
Para hacer lo que pides en COBOL harías algo como esto:

ING-COD.
DISPLAY "Ingrese código: " LINE 1 COL 1.
ACCEPT CODIGO COL 0 NO BEEP.
READ CLIENTES INVALID KEY GOTO ING-COD.
DISPLAY "Código aceptado".

Cierto?.

En ambiente web, la parte del ACCEPT la tienes que hacer con un formulario HTML que contenga un input tipo "text" más un botón tipo "sumbit", en la definición del formulario hay dos parámetros que indican cómo debe enviarse la información (parámetro "method", GET o POST) y a dónde debe enviarse (parámetro "action").
Este último parámetro apuntaría a un script hecho en PHP que es quien recibe el dato:

<form method="POST" action="recibedato.php">
<input type="text" name="codigo" value="">
<input type="submit" name="submit" value="Enviar">
</form>

El usuario debe rellenar el campo y darle clic en "Enviar" para que el navegador haga un POST con el dato ingresado hacia el script recibedato.php.

recibedato.php es un script hecho en PHP que procesa el dato en cuestión, más o menos así:
<?php
$codigo = $_POST['codigo']; // lo que está entre comillas coincide con "name"
if (existecodigoenlabasededatos($codigo)) { echo "dato correcto"; }
else { echo "dato incorrecto"; }
?>

echo es una instrucción PHP que envia la cadena entre comillas hacia el navegador.

Como te darás cuenta el ambiente web no es "interactivo" a la manera de RMCOBOL85 en ambiente DOS porque el recurso que quieres usar no está en la máquina cliente, sino en la máquina servidor.

Ahora bien, para hacer una consulta como la que quieres debes recurrir a JavaScript, JavaScript a diferencia de PHP se ejecuta en el cliente y te sirve para preprocesar los datos ingresados por el usuario en el formulario de forma más interactiva, por ejemplo puedes hacer que si pides una fecha validarla inmediatamente sin necesidad de enviar los datos al servidor (ya que validar una fecha no requiere acceder a recursos en el servidor, es solo un cálculo aritmético), o bien podría ser que quieras controlar que el usuario no ingrese espacios en blanco o deje un campo del formulario vacío y cosas como esas.

Para hacer una validación aún más robusta en ambiente web requiere que aprendas una técnica llamada AJAX (AJAX no es un "programa" o lenguaje, es una técnica de programación en JavaScript), pero hasta que no aprendas y le tomes la mano a las cosas más básicas de HTML, PHP y JavaScript será mejor que lo dejes para lo último.

En resumen, no pretendas hacer a la primera una aplicación web con PHP igual a como la haces en COBOL porque los ambientes son muy diferentes (de hecho, hay cosas que en COBOL las haces casi sin pensar pero en ambiente web son imposibles de hacer).

¿Preguntas?.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar