Ir al contenido


Foto

Video 3 phpo estructurado 3


  • Por favor identifícate para responder
11 respuestas en este tema

#1 elavioncito

elavioncito

    Newbie

  • Miembros
  • Pip
  • 8 mensajes

Escrito 14 diciembre 2016 - 05:23

Okey hace el tocayo cesar un Formulario sin errores pero al ejecutar en el otro archivo que adjunto recibe php 


php
  1. <?php
  2.  
  3. $nom = $_POST["nom"];
  4. $pais = $_POST["pais"];
  5. $sexo = $_POST["sexo"];
  6.  
  7. if($sexo = "F"){
  8.  
  9. echo "Hola $nom, BIENVENIDA";
  10.  
  11. }
  12. if($sexo = "M"){
  13.  
  14. echo "Hola $nom, BIENVENIDO";
  15.  
  16.  
  17.  
  18. }
  19.  
  20. ?>

 COMO VEN TAL CUAL COMO SALE EN VIDEO ME SALE ESTE ERROR  En el navegador 
NOMBRE:  
Ingrese Pais:            Chile           Colombia           Suecia   España    
INGRESE SEXO M F

 

 

Notice: Undefined index: sexo in C:\wamp\www\pruebas\recibe.php on line 5
Hola carlos, BIENVENIDAHola carlos, BIENVENIDO

 
Espero su amable ayuda

Archivos adjuntos


  • 0

#2 Delphius

Delphius

    Advanced Member

  • Moderador
  • PipPipPip
  • 6.295 mensajes
  • LocationArgentina

Escrito 14 diciembre 2016 - 08:26

Hola elavioncito, ¡Bienvenido a DelphiAccess! Espero que esta comunidad se convierta en tu segundo hogar.

 

No soy muy bueno en PHP, pero de lo que pude ver puedo decirte lo siguiente:

 

1. El input type text que le pusiste al lado de "Ingrese Pais" está demás.

2. Recuerda que cuando se pone el atributo value debe seguir el signo igual. Tus opciones no están bien declaradas. De ser así:


html5
  1. <option value="Opción 1">Opción 1</option>

3. Tienes declarado como nombre para el radio, en mayúsculas: "Sexo", pero en el script en el array asociativo _POST lo llamas por minúsculas ("sexo"). De ahí el error que te dice ha detectado en la línea 5.

 

Por el momento eso veo.

 

Te invito a que en lo sucesivo, hagas uso de las etiquetas de código apropiadas. Para ello cuando vayas a pegar código acá, primero haz clic en el botón con símbolo <> que está al lado del botón de citar. Se te habilitará una ventana para que selecciones el lenguaje a formatear, y un espacio para que pegues el código.

Esto ayudará a visualizar mejor el código.

 

Por lo pronto editaré tu mensaje para darle el formato esta vez.

 

Saludos,

 

Saludos,


  • 0

#3 elavioncito

elavioncito

    Newbie

  • Miembros
  • Pip
  • 8 mensajes

Escrito 15 diciembre 2016 - 05:06

Hola elavioncito, ¡Bienvenido a DelphiAccess! Espero que esta comunidad se convierta en tu segundo hogar.

 

No soy muy bueno en PHP, pero de lo que pude ver puedo decirte lo siguiente:

 

1. El input type text que le pusiste al lado de "Ingrese Pais" está demás.

2. Recuerda que cuando se pone el atributo value debe seguir el signo igual. Tus opciones no están bien declaradas. De ser así:


html5
  1. <option value="Opción 1">Opción 1</option>

3. Tienes declarado como nombre para el radio, en mayúsculas: "Sexo", pero en el script en el array asociativo _POST lo llamas por minúsculas ("sexo"). De ahí el error que te dice ha detectado en la línea 5.

 

Por el momento eso veo.

 

Te invito a que en lo sucesivo, hagas uso de las etiquetas de código apropiadas. Para ello cuando vayas a pegar código acá, primero haz clic en el botón con símbolo <> que está al lado del botón de citar. Se te habilitará una ventana para que selecciones el lenguaje a formatear, y un espacio para que pegues el código.

Esto ayudará a visualizar mejor el código.

 

Por lo pronto editaré tu mensaje para darle el formato esta vez.

 

Saludos,

 

Saludos,

 

gracias por su respuesta 

Pero el error preguntado se solu8ciono ahora da este error 

Hola vivente, BIENVENIDAHola vivente, BIENVENIDO

Siendo lo correcto 

Hola vivente, BIENVENIDO

 

ESperop estev sea el metodo utilizado 

gracias por su respuesta 

Pero el error preguntado se solu8ciono ahora da este error 

Hola vivente, BIENVENIDAHola vivente, BIENVENIDO

Siendo lo correcto 

Hola vivente, BIENVENIDO


  • 0

#4 elavioncito

elavioncito

    Newbie

  • Miembros
  • Pip
  • 8 mensajes

Escrito 15 diciembre 2016 - 05:09

 

Okey hace el tocayo cesar un Formulario sin errores pero al ejecutar en el otro archivo que adjunto recibe php 


php
  1. <?php
  2.  
  3. $nom = $_POST["nom"];
  4. $pais = $_POST["pais"];
  5. $sexo = $_POST["sexo"];
  6.  
  7. if($sexo = "F"){
  8.  
  9. echo "Hola $nom, BIENVENIDA";
  10.  
  11. }
  12. if($sexo = "M"){
  13.  
  14. echo "Hola $nom, BIENVENIDO";
  15.  
  16.  
  17.  
  18. }
  19.  
  20. ?>

 COMO VEN TAL CUAL COMO SALE EN VIDEO ME SALE ESTE ERROR  En el navegador 
NOMBRE:  
Ingrese Pais:            Chile           Colombia           Suecia   España    
INGRESE SEXO M F

 

 

Notice: Undefined index: sexo in C:\wamp\www\pruebas\recibe.php on line 5
Hola carlos, BIENVENIDAHola carlos, BIENVENIDO

 
Espero su amable ayuda

 

 

Hola elavioncito, ¡Bienvenido a DelphiAccess! Espero que esta comunidad se convierta en tu segundo hogar.

 

No soy muy bueno en PHP, pero de lo que pude ver puedo decirte lo siguiente:

 

1. El input type text que le pusiste al lado de "Ingrese Pais" está demás.

2. Recuerda que cuando se pone el atributo value debe seguir el signo igual. Tus opciones no están bien declaradas. De ser así:


html5
  1. <option value="Opción 1">Opción 1</option>

3. Tienes declarado como nombre para el radio, en mayúsculas: "Sexo", pero en el script en el array asociativo _POST lo llamas por minúsculas ("sexo"). De ahí el error que te dice ha detectado en la línea 5.

 

Por el momento eso veo.

 

Te invito a que en lo sucesivo, hagas uso de las etiquetas de código apropiadas. Para ello cuando vayas a pegar código acá, primero haz clic en el botón con símbolo <> que está al lado del botón de citar. Se te habilitará una ventana para que selecciones el lenguaje a formatear, y un espacio para que pegues el código.

Esto ayudará a visualizar mejor el código.

 

Por lo pronto editaré tu mensaje para darle el formato esta vez.

 

Saludos,

 

Saludos,

 

gracias por su respuesta 

Pero el error preguntado se solu8ciono ahora da este error 

Hola vivente, BIENVENIDAHola vivente, BIENVENIDO

Siendo lo correcto 

Hola vivente, BIENVENIDO

Ahi estan los archivos MODIFICADOS


  • 0

#5 Delphius

Delphius

    Advanced Member

  • Moderador
  • PipPipPip
  • 6.295 mensajes
  • LocationArgentina

Escrito 15 diciembre 2016 - 05:10

gracias por su respuesta 

Pero el error preguntado se solu8ciono ahora da este error 

Hola vivente, BIENVENIDAHola vivente, BIENVENIDO

Siendo lo correcto 

Hola vivente, BIENVENIDO

 

¡No ví el otro error!

Está dentro de los IF.

Cuando se trata de comparar si algo es igual a otra cosa se debe emplear el símbolo == (igual igual) ya que el = (igual) es para asignación.

 

PHP al ser un lenguaje basado en C, toma muchos elementos de su sintaxis.

 

Recuerda que también puedes usar el swith case como así también existe el else en el if.

 

 

Saludos,


  • 0

#6 elavioncito

elavioncito

    Newbie

  • Miembros
  • Pip
  • 8 mensajes

Escrito 15 diciembre 2016 - 05:18

GRacias Por Su respuesta amigo MUY AGRADECIDO CESAR DESDE VENEZUELA CARACAS

¡No ví el otro error!

Está dentro de los IF.

Cuando se trata de comparar si algo es igual a otra cosa se debe emplear el símbolo == (igual igual) ya que el = (igual) es para asignación.

 

PHP al ser un lenguaje basado en C, toma muchos elementos de su sintaxis.

 

Recuerda que también puedes usar el swith case como así también existe el else en el if.

 

 

Saludos,


  • 0

#7 Delphius

Delphius

    Advanced Member

  • Moderador
  • PipPipPip
  • 6.295 mensajes
  • LocationArgentina

Escrito 15 diciembre 2016 - 05:46

Nos alegra que hayas podido resolverlo.

En lo sucesivo te agradecerías que evites el uso de mayúsculas en exceso. En los foros y en las redes sociales equivale a gritar. Te invito además, para que te vayas orientando en el foro a que te des una vuelta por las normas y sugerencias al momento de postear.

 

El único defecto que quizá se le puede encontrar a los videos de César Cansino (al menos de los primeros y que he visto) es que están grabados con baja calidad de imagen y es posible que no se llegue a apreciar adecuadamente el texto del código, como ser los símbolos.

 

Por eso yo sugiero que en la medida en que ves sus videos tengas a mano abierto en el nevagador una pestaña con la documentación de PHP. Sugiero leerla en inglés por ser la más completa y confiable.

Por ejemplo aquí tienes la doc sobre if, elseif/else if.  Ayuda mucho a irse quitando ciertas dudas y para comprobar que efectivamente estamos haciendo las cosas bien.

 

Saludos,


  • 0

#8 elavioncito

elavioncito

    Newbie

  • Miembros
  • Pip
  • 8 mensajes

Escrito 16 diciembre 2016 - 06:23

Nos alegra que hayas podido resolverlo.

En lo sucesivo te agradecerías que evites el uso de mayúsculas en exceso. En los foros y en las redes sociales equivale a gritar. Te invito además, para que te vayas orientando en el foro a que te des una vuelta por las normas y sugerencias al momento de postear.

 

El único defecto que quizá se le puede encontrar a los videos de César Cansino (al menos de los primeros y que he visto) es que están grabados con baja calidad de imagen y es posible que no se llegue a apreciar adecuadamente el texto del código, como ser los símbolos.

 

Por eso yo sugiero que en la medida en que ves sus videos tengas a mano abierto en el nevagador una pestaña con la documentación de PHP. Sugiero leerla en inglés por ser la más completa y confiable.

Por ejemplo aquí tienes la doc sobre if, elseif/else if.  Ayuda mucho a irse quitando ciertas dudas y para comprobar que efectivamente estamos haciendo las cosas bien.

 

Saludos,

AUN TENGO PROBLEMAS  En la segunda parte del video del ejercicio en estudio esta


php
  1. <?php
  2.  
  3. $nom = $_POST["nom"];
  4. $pais = $_POST["pais"];
  5. $sexo = $_POST["Sexo"];
  6.  
  7.  
  8. switch($pais)
  9.  
  10. {
  11. case 'chile':
  12. $saludo = "usted es un Chileno mmh";
  13. break;
  14. case 'colombia':
  15. $saludo = "usted es un colombiano
  16. mmh";
  17. break;
  18. case 'suecia':
  19. $saludo = "usted es un sueco ";
  20. break;
  21. case 'españa':
  22. $saludo = "usted es un gallego ";
  23. break;
  24.  
  25. }
  26. if($sexo == "F"){
  27.  
  28. echo "Hola $nom, BIENVENIDA, y $saludo ";
  29.  
  30. }
  31.  
  32.  
  33. //if($sexo == "M"){
  34. else{
  35. echo "Hola $nom, BIENVENIDO, y $saludo ";
  36.  
  37. }
  38.  
  39. ?>

 

 y el error que me da es Notice: Undefined variable: saludo in C:\wamp\www\pruebas\recibe.php on line 34

Hola pedro, BIENVENIDO, y

 

puse en negritas lineas de error 

agradezco ayuda 


  • 0

#9 Delphius

Delphius

    Advanced Member

  • Moderador
  • PipPipPip
  • 6.295 mensajes
  • LocationArgentina

Escrito 16 diciembre 2016 - 11:09

Pues no veo el error, salvo que sea que debe haber un espacio entre el else y las llaves.

 

Este es mi script de prueba para el mismo ejercicio, y puedes observar que salvando los nombres de las variables y la forma en como se arma el mensaje de saludo, es prácticamente lo mismo:


php
  1. <?php
  2. $elnombre = $_POST["nombre"];
  3. $elpais = $_POST["pais"];
  4. $elsexo = $_POST["sexo"];
  5.  
  6. switch ($elpais) {
  7. case 'Argentina':
  8. $saludo = "Hola che!";
  9. break;
  10. case 'México':
  11. $saludo = "Ajúa!";
  12. break;
  13. case 'España':
  14. $saludo = "Hostias!";
  15. break;
  16. }
  17.  
  18. if ($elsexo=="f"){
  19. echo "$saludo bienvenida $elnombre";
  20. }
  21. else {
  22. echo "$saludo bienvenido $elnombre";
  23. }
  24. ?>

Yo mucho de PHP no se, estoy en las mismas que vos. Es más, estoy siguiendo los mismos videos :) que tu.

Lo que veo en lo que difiere es en las identaciones. ¿Que estás usando para escribir el código? Observa lo "prolijo" que es mi script en comparación con el tuyo. Trata de ser más ordenado, te va a ser necesario para cuando tengas que escribir cientos sino miles de líneas.

Visual Studio Code, como Notepad++ te van a permitir escribir código bien formateado.

 

Saludos,


  • 0

#10 elavioncito

elavioncito

    Newbie

  • Miembros
  • Pip
  • 8 mensajes

Escrito 17 diciembre 2016 - 04:07

Pues no veo el error, salvo que sea que debe haber un espacio entre el else y las llaves.

 

Este es mi script de prueba para el mismo ejercicio, y puedes observar que salvando los nombres de las variables y la forma en como se arma el mensaje de saludo, es prácticamente lo mismo:


php
  1. <?php
  2. $elnombre = $_POST["nombre"];
  3. $elpais = $_POST["pais"];
  4. $elsexo = $_POST["sexo"];
  5.  
  6. switch ($elpais) {
  7. case 'Argentina':
  8. $saludo = "Hola che!";
  9. break;
  10. case 'México':
  11. $saludo = "Ajúa!";
  12. break;
  13. case 'España':
  14. $saludo = "Hostias!";
  15. break;
  16. }
  17.  
  18. if ($elsexo=="f"){
  19. echo "$saludo bienvenida $elnombre";
  20. }
  21. else {
  22. echo "$saludo bienvenido $elnombre";
  23. }
  24. ?>

Yo mucho de PHP no se, estoy en las mismas que vos. Es más, estoy siguiendo los mismos videos :) que tu.

Lo que veo en lo que difiere es en las identaciones. ¿Que estás usando para escribir el código? Observa lo "prolijo" que es mi script en comparación con el tuyo. Trata de ser más ordenado, te va a ser necesario para cuando tengas que escribir cientos sino miles de líneas.

Visual Studio Code, como Notepad++ te van a permitir escribir código bien formateado.

 

Saludos,

y el archivo  o los codigos del formulario pues usted hizo algunos cambios Gracias por responder se lo agradezco  


  • 0

#11 Delphius

Delphius

    Advanced Member

  • Moderador
  • PipPipPip
  • 6.295 mensajes
  • LocationArgentina

Escrito 17 diciembre 2016 - 04:23

Este es mi script para formulario.php:


php
  1. <html>
  2. <head>
  3. <meta http-equiv "content-type" name="" content="text/html; charset utf-8">
  4. <title>Practica de video tutorial N° 3</title>
  5. </head>
  6. <body>
  7. <form name "form" method="post" action="recibe.php">
  8. Nombre: <input type="text" name="nombre">
  9. <br>
  10. Seleccione país: <select name="pais">
  11. <option value="Argentina">Argentina</option>
  12. <option value="México">México</option>
  13. <option value="España">España</option>
  14. </select>
  15. <br>
  16. Indice sexo:
  17. M <input type="radio" name="sexo" value="m">
  18. F <input type="radio" name="sexo" value="f">
  19. <hr>
  20. <input type="submit" name="boton" value="enviar" title="enviar">
  21. </form>
  22. </body>
  23. </html>

Este escript no es tan importante. Mientras se respete y sepamos el nombre asignado para los elementos con los cuales vamos a capturar con POST y/o GET, la forma o el diseño del form es de menos. Yo para diferenciarlos suelo nombrar a las variables en php con el prefijo el/la/los al nombre de la variable. De este modo si por ejemplo tengo el campo nombre para que el usuario escriba su nombre:


php
  1. Nombre: <input type="text" name="nombre">

Observa como le defino el nombre en name. Esto es lo que luego podremos recuperar como parámetro en php.

 

Luego en php esto lo recupero/almaceno en una variable llamada elnombre:


php
  1. $elnombre = $_POST["nombre"];

Al menos a mi me parece mucho más cómodo, evita confusiones.

 

Saludos,


  • 0

#12 elavioncito

elavioncito

    Newbie

  • Miembros
  • Pip
  • 8 mensajes

Escrito 19 diciembre 2016 - 01:44

Este es mi script para formulario.php:


php
  1. <html>
  2. <head>
  3. <meta http-equiv "content-type" name="" content="text/html; charset utf-8">
  4. <title>Practica de video tutorial N° 3</title>
  5. </head>
  6. <body>
  7. <form name "form" method="post" action="recibe.php">
  8. Nombre: <input type="text" name="nombre">
  9. <br>
  10. Seleccione país: <select name="pais">
  11. <option value="Argentina">Argentina</option>
  12. <option value="México">México</option>
  13. <option value="España">España</option>
  14. </select>
  15. <br>
  16. Indice sexo:
  17. M <input type="radio" name="sexo" value="m">
  18. F <input type="radio" name="sexo" value="f">
  19. <hr>
  20. <input type="submit" name="boton" value="enviar" title="enviar">
  21. </form>
  22. </body>
  23. </html>

Este escript no es tan importante. Mientras se respete y sepamos el nombre asignado para los elementos con los cuales vamos a capturar con POST y/o GET, la forma o el diseño del form es de menos. Yo para diferenciarlos suelo nombrar a las variables en php con el prefijo el/la/los al nombre de la variable. De este modo si por ejemplo tengo el campo nombre para que el usuario escriba su nombre:


php
  1. Nombre: <input type="text" name="nombre">

Observa como le defino el nombre en name. Esto es lo que luego podremos recuperar como parámetro en php.

 

Luego en php esto lo recupero/almaceno en una variable llamada elnombre:


php
  1. $elnombre = $_POST["nombre"];

Al menos a mi me parece mucho más cómodo, evita confusiones.

 

Saludos,

GRACIAS!! ve el suyo si corrio perfecto  MUCHAS GRACIAS!!!!


  • 0