Autor
|
Tema: Error en al insertar (Leído 2,467 veces)
|
jagltoro
Desconectado
Mensajes: 8
|
Les voy a explicar mi problema lo mas detallado posible: tengo una instruccion: $query="insert into libro (foto,titulo,descripcion,id_categoria,archivo) values ('$des_2','$nom','$des','$cat','$des_1')"; Cuando le doy el echo me muestra bien: insert into libro (foto,titulo,descripcion,id_categoria,archivo) values ('foto.png,'Titulo','Descripcion','1','documento.pdf) [No pongo los valores reales porq no son importantes, si me muestra lo que le mando] el detalle esta en cuando ejecuto mysql_query($query) or die (mysq_error()); no me da nada, he intentado incluso mysql_query($query,$link) or die (mysq_error()); y lo mismo El archivo de conexion a la base de datos esta bien porque lo utilizo en otros formularios y si me ingresa correctamente, el detalle es con este. Al principio lo tenia directo mysql_query("insert into libro (foto,titulo,descripcion,id_categoria,archivo) values ('$des_2','$nom','$des','$cat','$des_1')") lo cambie por: mysql_query("insert into libro (foto,titulo,descripcion,id_categoria,archivo) values ('$des_2','$nom','$des','$cat','$des_1')",$link) le puse el ';' despues de las comillas dobles y aun nada no se que mas pueda hacer, ah un amigo me dijo que lo pusiera asi: "insert into libro (foto,titulo,descripcion,id_categoria,archivo) values ('".$des_2."','".$nom."','".$des."','".$cat."','".$des_1."')"; Y aun nada Detalles: SO: Ubuntu 11.10 PHP: 5.3.6-13ubuntu3.6 MySQL: 5.1.61
|
|
|
En línea
|
|
|
|
Runex
Desconectado
Mensajes: 192
http://tutogramacion.blogspot.com
|
mysql_query("insert into libro(foto,titulo,descripcion,id_categoria,archivo) values($des_2,$nom,$des,$cat,$des_1)",$link);
Si las variables las has declarado tu en el mismo archivo, con esto te debería funcionar, además mira si el orden en el que insertas las variables es el correcto. Si en vez de ser declaradas son recibidas mediante un formulario de otra página, ya sabes que debes usar las variables $_REQUEST[],$_POST[] o $_GET[]. Si con ésto no te funciona avisalo y te busco otras posibles soluciones Un saludo
|
|
|
En línea
|
"No renunciaría al bambú. Nunca renuciaría a ti. No te compares con otros" "El me dijo: El bambú tenía un propósito diferente al del helecho, sin embargo eran necesarios y hacían del bosque un lugar hermoso".
|
|
|
jagltoro
Desconectado
Mensajes: 8
|
el formulario: <legend>Ingresar nuevo libro</legend> <form action="ingresos/libros.php" method="POST" enctype="multipart/form-data"> <table class="nostyle"> <input type="hidden" name="action" value="nuevo"/> <tr> <td style="width:70px;">Foto: </td> <td><input type="file" name="foto" class="input-text"/></td> </tr> <tr> <td style="width:70px;">Titulo: </td> <td><input type="text" name="titulo" class="input-text"/></td> </tr> <tr> <td style="width:70px;">Descripcion: </td> <td><textarea name="descripcion" cols="50" rows="10"></textarea></td> </tr> <tr> <td style="width:70px;">Categoria: </td> <td> <select name="categoria"> <option value="">------------</option> <?php include('conect.php'); $link=Conectarse(); $query = mysql_query("SELECT * FROM categoria"); while ($row = mysql_fetch_array($query)) { ?> <option value="<?php echo $row['id']; ?>"><?php echo $row['descripcion']; ?></option> <?php } ?> </select> </td> </tr> <tr> <td style="width:70px;">Autor(es): </td> <td><input name="btnCreate" type="button" value="+" onClick="javascript:fncCreateElement();"> <input name="btnDelete" type="button" value="-" onclick="javascript:fncDeleteElement();"><br> <div id="autores"></div> <input name="conteo" id="hdnLine" type="hidden" value="0"> </td> </tr> <tr> <td style="width:70px;">Archivo: </td> <td> <input type="file" name="archivo" class="input-text"/> </td> </tr> <tr> <td colspan="2" class="t-right"><input type="submit" class="input-submit" value="Nuevo" /></td> </tr> </table> </form>
y el php <?php include('../conect.php'); $link=Conectarse(); $action=$_POST['action']; $id=$_POST['id']; $foto=strtolower($_FILES['foto']['name']); $nom=$_POST['nombre']; $des=$_POST['descripcion']; $arc=$_FILES['archivo']['name']; $cat=(int)$_POST['categoria']; $i=$_POST['conteo']; for($j=0;$j<=$i;$j++) { $id_aut[$j]=$_POST['autor'.$j]; } $pref=substr(md5(uniqid(rand())),0,15); $trozos=explode(".",$arc); $ext_arc=end($trozos); $trozos=explode(".",$foto); $ext_foto=end($trozos); $des_arc="uploads/".$pref.".".$ext_arc; $des_foto="uploads/".$pref.".".$ext_foto; $des_1="modulos/ingresos/".$des_arc; $des_2="modulos/ingresos/".$des_foto; $query="insert into `libro` (foto,titulo,descripcion,id_categoria,archivo) values ('".$des_2."','".$nom."','".$des."',$cat,'".$des_1."')"; if($action=='nuevo') { if ($arc!= "") { // guardamos el archivo a la carpeta files if (copy($_FILES['archivo']['tmp_name'],$des_arc) and copy($_FILES['foto']['tmp_name'],$des_foto)) { include('../conect.php'); $link=Conectarse(); mysql_query($query); $id= mysql_insert_id($link); for($j=0;$j<=$i;$j++) { mysql_query("insert into autor_a_libro values ('$id','$id_aut[$j]')",$link); } } } echo "<script>location.href='../libros.php?do=nuevo'</script>"; } ?>
|
|
|
En línea
|
|
|
|
Runex
Desconectado
Mensajes: 192
http://tutogramacion.blogspot.com
|
Has probado lo que te he dicho antes? $query="insert into libro(foto,titulo,descripcion,id_categoria,archivo) values($des_2,$nom,$des,$cat,$des_1)";
Y acuérdate de usar addslashes() para eliminar la posibilidad de magic quotes Un saludo
|
|
|
En línea
|
"No renunciaría al bambú. Nunca renuciaría a ti. No te compares con otros" "El me dijo: El bambú tenía un propósito diferente al del helecho, sin embargo eran necesarios y hacían del bosque un lugar hermoso".
|
|
|
jagltoro
Desconectado
Mensajes: 8
|
Solucione el error rehaciendo todo el codigo, muchas gracias por la ayuda, sin embargo sigo sin entender que paso, porque las instrucciones son identicas a las que tenia, solo movi un poquito y cambie algunos nombres de variables, sin embargo en teoria es lo mismo.
Ah por cierto Runex, el comando que me diste no funciono, daba un error Unknown field, si no me equivoco
|
|
|
En línea
|
|
|
|
:ohk<any>
Desconectado
Mensajes: 1.744
Yo lo que quiero que me salga bien es la vida.
|
Que extraño, podria preguntar que hace esta funcion? $link=Conectarse();
Porque es una funcion que la envias sin parámetros, quiza puede ser eso, como tambien no Pero como ya lo solucionaste no hay problema.
|
|
|
En línea
|
Y es que a veces pienso que si no estuviera loco no podría salir adelante. Lo que no se es capaz de dar, en realidad no se posee, uno es poseído por ello.
|
|
|
jagltoro
Desconectado
Mensajes: 8
|
La funcion $link=Conectarse();
viene del conect.php
function Conectarse() { $db_host="****"; $db_nombre="****"; $db_user="****"; $db_pass="*****";
$link=mysql_connect($db_host,$db_user,$db_pass) or die ("error"); mysq_select_db($db_nombre,$link); return $link; }
|
|
|
En línea
|
|
|
|
|
Mensajes similares |
|
Asunto |
Iniciado por |
Respuestas |
Vistas |
Último mensaje |
|
|
Error insertar sub en virtual dub
« 1 2 3 »
Multimedia
|
soytiti
|
26
|
7,806
|
25 Octubre 2004, 02:54 am
por mbruch
|
|
|
me da un error al insertar un subtitulo en un avi
Multimedia
|
serpuc
|
7
|
2,448
|
24 Septiembre 2005, 14:03 pm
por Songoku
|
|
|
Error al insertar CD
Software
|
mabe
|
1
|
2,943
|
10 Abril 2007, 19:40 pm
por lipman
|
|
|
Error al insertar BLOB con libmysql.dll
Programación C/C++
|
LucasBols
|
2
|
1,914
|
31 Mayo 2012, 18:58 pm
por LucasBols
|
|
|
error insertar comilla
PHP
|
kakashi20
|
5
|
2,151
|
22 Agosto 2013, 19:32 pm
por #!drvy
|
|