Error con formulario

Iniciado por araque615, 12 Septiembre 2015, 00:16 AM

0 Miembros y 2 Visitantes están viendo este tema.

araque615

#10
Yo no entender, no se puede simplemente hacerlo en el mismo código? Sin necesidad de crear otro archivo?

0roch1

Si puedes pero

1. Como comentó Thryks aísla el código para que lo comprendas.
2. Es mejor práctica tener archivos separados: el archivo desde donde envías la información y el archivo donde recibes la información.

Comenta exactamente que es lo que sucede con un "no funciona" no podemos ayudarte mucho.
Qué hace?, qué no hace?, qué errores muestra?, qué comportamiento tiene?.


Thryks

#12
Cita de: 0roch1 en 12 Septiembre 2015, 01:46 AM
No puedes hacer $_GET['$idarecoger'] en todo caso tendría que ser así a menos de que el campo en realidad tenga el caracter $, creo que te haz confundido y haz querido decir $_GET['idarecoger'].



Creo que lo estás confundiendo, en tu primer ejemplo usaste GET y en este último usas POST.


Intenta con lo siguiente.

index.htm
Código (html4strict) [Seleccionar]

<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>Formulario</title>
</head>
<body>
<form id="formulario" name="formulario" action="guardar.php" method="GET" >
<input type="text" name="input1" id="input1"/>
   </br>
   <button id="enviar" type="submit">Guardar</button>
</form>
</body>
</html>


guardar.php
Código (php-brief) [Seleccionar]

<?php

 
if(isset($_GET['input1'])){ //isset — Determina si una variable está definida y no es NULL
 echo "<br>La variable \$_GET['input1'] esta definida";
 if(!empty($_GET['input1'])) { //empty — Determina si una variable está vacía
 echo "<br>La variable \$_GET['input1'] no esta vacia";
 }else {
 echo "<br>La variable \$_GET['input1'] esta vacia";
 }
 }else {
 echo "<br>La variable \$_GET['input1'] no esta definida";
 }
?>




Cierto 0roch1 en la primera me equivoque poniendo el simbolo $ y en la segunda use post y en la primera get porque escribí el código en ese momento y no tuve en cuenta como se pasaba el form sino que quería que araque entendiese la forma de comprobar que estuviese vacío o no pero tienes razón ya que podría haber causado errores, siento la equivocación. Gracias por el apunte.
Futuro Sysadmin

araque615

Cita de: 0roch1 en 12 Septiembre 2015, 02:27 AM
Si puedes pero

1. Como comentó Thryks aísla el código para que lo comprendas.
2. Es mejor práctica tener archivos separados: el archivo desde donde envías la información y el archivo donde recibes la información.

Comenta exactamente que es lo que sucede con un "no funciona" no podemos ayudarte mucho.
Qué hace?, qué no hace?, qué errores muestra?, qué comportamiento tiene?.



De acuerdo, si borro desde el comentario CHECKS hasta el comentario FIN DE CHECKS y voy a la web, sale así

http://prntscr.com/8fgupe

y si vuelvo agregar el código entre los dos comentarios, al momento de darle guardar, sale así.

http://prntscr.com/8fgv18

someRandomCode

Donde tenes definida la funcion name_check y de mas? no sera que alguna de ellas tiene un die() ? o que te estan retornando un error y PHP deja de correr el script por la gravedad del mismo?

araque615

#15
Cita de: someRandomCode en 12 Septiembre 2015, 16:05 PM
Donde tenes definida la funcion name_check y de mas? no sera que alguna de ellas tiene un die() ? o que te estan retornando un error y PHP deja de correr el script por la gravedad del mismo?

Cierto xddddd, se me olvidó hacer la function, pues estaba haciéndola ahorita que leí tu mensaje, me quedaría así?

Código (php) [Seleccionar]
public function credits_check($a) {
$a = $this->filter($a);
if(empty($a)) { $error = "Campo vacío"; }
return $error;

}

someRandomCode

De que clase heredarias? porque tenes que definir un filtro para esa clase, sino mas vale si lo que queres es prevenir SQL injection es mas comodo que uses mysql_real_escape_string, si es que la cadena no esta vacia. (aunque en rigor de verdad, mysql_real_escape_string no va a fallar si la cadena esta vacia)
Es cuestion de que adaptes tu logica, la posta a dia de hoy es usar PDO

araque615

Cita de: someRandomCode en 12 Septiembre 2015, 16:41 PM
De que clase heredarias? porque tenes que definir un filtro para esa clase, sino mas vale si lo que queres es prevenir SQL injection es mas comodo que uses mysql_real_escape_string, si es que la cadena no esta vacia. (aunque en rigor de verdad, mysql_real_escape_string no va a fallar si la cadena esta vacia)
Es cuestion de que adaptes tu logica, la posta a dia de hoy es usar PDO

Ya, pero yo no manejo PDO

#!drvy


araque615

Cita de: #!drvy en 12 Septiembre 2015, 16:59 PM
Pues aprendelo que es bien facil.
http://php.net/manual/es/book.pdo.php

Saludos

Pero aunque sea podrías hacerme el favor de corregir el problema en mi actual código? :C