Foros del Web » Programando para Internet » PHP »

Maestro detalle php

Estas en el tema de Maestro detalle php en el foro de PHP en Foros del Web. Hola, buenas noches, necesito de su ayuda por favor! estoy practicando con maestro detalle, tengo unos códigos, pero no encuentro el error, ya que en ...
  #1 (permalink)  
Antiguo 06/12/2014, 00:15
 
Fecha de Ingreso: abril-2013
Mensajes: 5
Antigüedad: 11 años
Puntos: 0
Maestro detalle php

Hola, buenas noches, necesito de su ayuda por favor!
estoy practicando con maestro detalle, tengo unos códigos, pero no encuentro el error, ya que en la tabla si pongo 2 teléfonos, me graba primero un campo en blanco y luego me graba los registros que ingreso:
acá está el formulario de ingreso: nombre, apellido y la opción de agregar los teléfonos:

FORMULARIO:

<?php

error_reporting(E_ALL ^ E_NOTICE ^ E_DEPRECATED);

?>
<script src="//code.jquery.com/jquery-1.11.0.min.js"></script>

<form method="POST" action="detalle.php">

Nombre: <input type="text" name="nombre" /><br />
Apellido: <input type="text" name="apellido" /><br />
<br />
<h3>Telefonos</h3>
<a href="#" id="agregarTelefono">Agregar nuevo Tel&eacute;fono</a>
<br /><br />
<div id="contenedorTelefonos" style="background-color:#F2F4F5;">
<div id="tel0" style="display:none;width:100%;margin-bottom:10px;">
<input type="text" name="caract[]" />
<input type="text" name="telefono[]" />
<a href="#" class="eliminarTelefono"> XXXXXX </a>
</div>

</div>
<br /><br />
<input type="submit" value="Guardar" />

</form>
<?php
foreach($telefonos as $t){
if($t != "")
echo '
<div id="tel_1" style="width:100%;margin-bottom:10px;">
<input type="text" name="caract[]" />
<input type="text" name="telefono[]" value="'.$t.'" />
<a href="#" class="eliminarTelefono"> XXXXXX </a>
</div>
';
}?>
<script>
$("#agregarTelefono").click(function(){
var clonado = $("#tel0").clone(true,true);
clonado.attr("id","otroID");
clonado.css("display","block");
$("#contenedorTelefonos").append(clonado);
});

$(".eliminarTelefono").click(function(){
//alert("aca");
$(this).parent().remove();
});

</script>


DETALLE.PHP:

<?php
//conecto con la base de datos
error_reporting(E_ALL ^ E_NOTICE ^ E_DEPRECATED);
$connectid = mysql_connect("localhost","root","");

//selecciono la base de datos a utilizar
mysql_select_db("ejercicios",$connectid);

//Sentencia de inserción del elemento

$ssql = "INSERT INTO contactos
VALUES ('','".$_POST['nombre']."','".$_POST['apellido']."');";
//lo inserto en la base de datos
if (mysql_query($ssql,$connectid)){

//recibo el último id
$ultimo_id = mysql_insert_id();
echo "se ingreso el contacto";
echo "ultimo id: ".$ultimo_id;
$telefonos = $_POST['telefono'];
$caracteristicas = $_POST['caract'];

if(count($telefonos)>1){

foreach($telefonos as $clave =>$telefono){

if(!empty($telefono))

$car=$caracteristicas[$clave];

//guardamos en la base de datos
$guardar="INSERT INTO telefonos VALUES ('','".$ultimo_id."','".$car."','".$telefono."');" ;
$guardar2=mysql_query($guardar);
if (!$guardar2)
{
echo "los telefonos no fueron insertados";
}else{
echo "telefonos ingresados";
}
/* ACA PODEMOS INSERTAR CADA TELEFONO */
}
}

}else{
echo "La inserción del contacto no se realizó";
}
?>
  #2 (permalink)  
Antiguo 06/12/2014, 22:15
Avatar de Lautaro_eb  
Fecha de Ingreso: mayo-2010
Ubicación: Bariloche, Argentina
Mensajes: 284
Antigüedad: 14 años
Puntos: 24
Respuesta: Maestro detalle php

Esta muy complicado de leer tu codigo. Si podes usa las equitas [ code ] [ /code ] sin espacios. Por favor!

Prova depurar lo que envia el formularios con var_dump($_POST) en detalles.php y fijate que el formulario no este mandando espacios en blanco.
__________________
Mi emprendimiento: Software BRC
Youtube: Tutoriales de programación y electrónica.

Etiquetas: detalle, maestro
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 19:11.