Ver Mensaje Individual
  #1 (permalink)  
Antiguo 03/03/2006, 00:02
iarrieta
 
Fecha de Ingreso: noviembre-2002
Ubicación: Colombia
Mensajes: 278
Antigüedad: 21 años, 5 meses
Puntos: 0
Funciona, pero tiene algo anormal

Hola:

Estoy usando el clasico codigo para insertar en la base de datos pero se me ha complicado porque parte del formulario son dos listas dependientes.

Lo extraño es que como tengo actualmente el codigo, funciona perfectamente, es decir, inserta sin problemas los datos en la base de datos... Explico:

lista uno CATEGORIAS
lista dos (depende de uno) SUBCATEGORIAS
campo text nombre
campo text direccion, etc etc

Siempre hay CATEGORIAS pero no siempre estas tienen SUBCATEGORIAS

Caso 1: Si mando (al click en submit) CATEGORIA y SUBCATEGORIA + demas campos del form, perfecto, me muestra la pagina que procesa con un mensajito de "espera.....bla bla" y listo, vuelve al form indicando que inserto y en efecto, inserto perfectamente categoria, subcategoria y demas campos del form.

Caso 2: Si mando SOLO CATEGORIA porque no tiene subcategoria, lo mismo, la pagina con el mensajito y vuelve al form, insertando perfectamente en este caso la categoria + los demas campos del form.

SIEMPRE INSERTA PERFECTO PERO...

Cuando no envio SUBCATEGORIA (caso 2), mientras esta en la pagina del mensajito (la que procesa - ingresar_datos.php) que dice "espera...bla bla, sale esto en la parte superior del navegador:

Warning: mysql_result(): Unable to jump to row 0 on MySQL result index 6 in /home/xxxxxx/public_html/xxxxxx/ingresar_datos.php on line 40

Aunque siempre inserta bien, es molesto el mensaje superior para un cliente ademas que indica que algo esta mal...

Alguna sugerencia?

Aqui el codigo de ingresar_datos.php
Código PHP:
<?
if(isset($_POST['id_padre'])){ 
$id_padre=$_POST['id_padre']; 


if(isset(
$_POST['id_hija'])){ 
$id_hija=$_POST['id_hija']; 
}

$sql_categoria="SELECT * FROM categorias WHERE id_categoria='".$id_padre."'"
$categoria_resultado=mysql_query($sql_categoria,$conexion); 
$categoria=mysql_result($categoria_resultado,0,"categoria");

$sql_subcategoria="SELECT * FROM subcategorias WHERE id_subcategoria='".$id_hija."'"
$subcategoria_resultado=mysql_query($sql_subcategoria,$conexion); 
$subcategoria=mysql_result($subcategoria_resultado,0,"subcategoria");

$sql="insert into clientes2 (categoria,subcategoria,nombre,direccion,punto_referencia,telf_principal,telf_alternativo,correo_principal,correo_alternativo,direccion_web,persona_contacto,descripcion) values ('$categoria','$subcategoria','$nombre','$direccion','$punto_referencia','$telf_principal','$telf_alternativo','$correo_principal','$correo_alternativo','$direccion_web','$persona_contacto','$descripcion')";
$resultado=mysql_query($sql,$conexion);
?>
Nota: Los select que vienen del form son respectivamente id_padre y id_hija (categoria y subcategoria)

La linea 40 es:
Código PHP:
<?
$subcategoria
=mysql_result($subcategoria_resultado,0,"subcategoria");
?>