Foros del Web » Programando para Internet » PHP »

registro de ofertas

Estas en el tema de registro de ofertas en el foro de PHP en Foros del Web. Buenas noches, estoy haciendo un proyecto de servicios para clientes, hice un formulario html que redireciona a insertar. php con los repectivos datos. a la ...
  #1 (permalink)  
Antiguo 26/05/2015, 18:49
 
Fecha de Ingreso: mayo-2015
Mensajes: 1
Antigüedad: 9 años, 6 meses
Puntos: 0
Pregunta registro de ofertas

Buenas noches,
estoy haciendo un proyecto de servicios para clientes, hice un formulario html que redireciona a insertar. php con los repectivos datos. a la hora de probar me sale " undefined index nombre" por lo que busque en internet, revise nombres de variables, ect. pero nada.
Posteo los dos archivos por si alguien me echa una mano,
gracias de antemanop.

form html

<form name="formaServicio" action="../edu.marketplace.registros/registroservicioindividual.php" method="POST" enctype="multipart/form-data">
<center>
<table>

<tr>
<td>Nombre</td><td><input type="text" name="nombre" value="" /></td>
</tr>
<tr>
<td>Valor</td>
<td><input type="text" name="valor" value="" /></td>
</tr>
<tr>
<td>FechaPublicacion</td>
<td>
<input type="date" name="fecha_publicado" value="" style="width: 151px" /></td>
</tr>
<tr>
<td>Categoria</td>
<td> <select name="categoria" style="width: 170px">
<option value="">Seleccionar</option>
<option value="Alojamiento">Alojamiento</option>
<option value="Paseos">Paseos</option>
<option value="Alimentacion">Alimentacion</option>
</select></td>
</tr>


</table>

<input type="submit" value="Ingresar" name="Publicar" style="width: 68px" />
<button type="button" name="buscarServicio" onclick="window.location.href='BuscarServicio.php' " class="auto-style1" style="width: 189px"><img alt="icono" src="../img/Search.png"/>Buscar Servicios</button>
</center>
</form>

archivo insertar.php

<?php

include("../conexion.php");
$link=Conectarse();
if($_REQUEST['nombre'] !=null && $_REQUEST['valor'] !=null && $_REQUEST['fecha_publicado'] !=null && $_REQUEST['categoria'] !=null){

$nombre = $_REQUEST['nombre'];
$valor = $_REQUEST['valor'];
$fechapublicacion= $_REQUEST['fecha_publicado'];
$valor = $_REQUEST['categoria'];

$con=("INSERT INTO ofertas (nombre,valor,fecha_publicado,categoria) VALUES ('$nombre','$valor','$fechapublicacion','$categori a')");
mysql_query($con);

echo "<script type='text/javascript'> alert('oferta registrada correctamente');
window.location='../proveedores/rgistroservicioindividual.html'
</script>";
}
?>
  #2 (permalink)  
Antiguo 27/05/2015, 01:10
Avatar de Uncontroled_Duck
Colaborador
 
Fecha de Ingreso: mayo-2011
Ubicación: Málaga [Spain]
Mensajes: 806
Antigüedad: 13 años, 7 meses
Puntos: 261
Respuesta: registro de ofertas

Hola ciscojuan,

Básicamente el problema reside en que cargas la verificación del formulario incluso sin haber recibido nada por POST.
Código PHP:
if($_REQUEST['nombre'] != null && $_REQUEST['valor'] != null //...)
{
//... 
En teoría la secuencia sería así:
Código PHP:
// 1. Verifica si hay datos POST.
if($_SERVER['REQUEST_METHOD'] == 'POST')
{
    
// 2. Verificas si todos (los que necesites) traen algún valor. (Traen String, no null)
    
if($_POST['nombre'] != '' && $_POST['valor'] != '' && $_POST['fecha_publicado'] != '' && $_POST['categoria'] != '')
    {

        
// 3. Verificas si los datos recibidos son los esperados.
        //       Esto se recomienda para evitar injecciones en la DB. Recomendable usar PDO.
        
        // 4. Preparas los datos para pasarlos a consulta
        
$nombre           $_POST['nombre'];
        
$valor            $_POST['valor'];
        
$fechapublicacion $_POST['fecha_publicado'];
        
$valor            $_POST['categoria'];
    }
}
// Los pasos 2 y 3 se pueden hacer juntos o uno detrás de otro, depende de lo limpio que quieras tener el código.
// Si esperas datos por POST, mejor trabajar con $_POST. 
Prueba y nos cuentas.

Saludos,
__________________
Todos agradeceremos que pongas el código en su respectivo Highlight

Etiquetas: formulario, html, mysql, ofertas, registro, select, variable
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 23:29.