Ver Mensaje Individual
  #4 (permalink)  
Antiguo 14/08/2013, 08:28
orw28
 
Fecha de Ingreso: agosto-2009
Ubicación: Venezuela
Mensajes: 82
Antigüedad: 15 años, 3 meses
Puntos: 0
Pregunta DUPLICADO: Tabla con datos php en dos columnas!

Hola! Tengo un código de un formulario para guardar info en Mysql, y funciona perfecto con input tipo texto, pero cuando necesito subir también una imagen, deja de funcionar. Estoy comenzado a usar ajax y tengo muy poco conocimiento al respecto. Espero me puedan ayudar por favor!

Este es mi formulario donde pongo el link:

Código HTML:
Ver original
  1. <table id="grilla" class="lista" width="690">
  2. <tr>
  3. <td><a href="javascript: fn_mostrar_frm_modificar(<?=$rs_per['id']?>);"><img src="http://www.forosdelweb.com/f18/images/page_edit.png" /></a></td>
  4. </tr>

La función fn_mostrar_frm_modificar:

Código Javascript:
Ver original
  1. function fn_mostrar_frm_modificar(id){
  2. $("#div_oculto").load("ajax_form_modificar.php", {id: id}, function(){
  3. $.blockUI({
  4. message: $('#div_oculto'),
  5. css:{
  6. top: '20%'
  7. }
  8. });
  9. });
  10. };

El ajax_form_modificar.php:

Código PHP:
Ver original
  1. <p>Por favor edite los datos necesarios:</p>
  2. <form action="javascript: fn_modificar();" method="post" name="frm_per" id="frm_per">
  3. <input type="hidden" id="id" name="id" value="<?=$rs_per['id']?>" />
  4. <table class="formulario">
  5. <tbody>
  6. <tr>
  7. <td>Nombre:</td>
  8. <td><input name="nombre" type="text" id="nombre" size="40" class="requisssred" value="<?=$rs_per['nombre_produc']?>" /></td>
  9. </tr>
  10. <tr>
  11. <td>Cantidad Disponible:</td>
  12. <td><input name="stock" type="text" id="stock" size="40" class="required" value="<?=$rs_per['cant_disponible']?>" /></td>
  13. </tr>
  14. <tr>
  15. <tr>
  16. <td>Imagen:</td>
  17. <td><input name="imagen" type="file" id="imagen" size="30"/></td>
  18. </tr>
  19. <tr>
  20. <td>Banner:</td>
  21. <td><input name="img2" type="file" id="img2" size="30"/></td>
  22. </tr>
  23. <tr>
  24. <td>Precio:</td>
  25. <td><input name="precio" type="text" id="precio" size="30" value="<?=$rs_per['precio']?>" /></td>
  26. </tr>
  27. <tr>
  28. <td>Categoría:</td>
  29. <td> <?php generaCategorias(); ?> </td>
  30. </tr>
  31. <tr>
  32. <td>Subcategoría:</td>
  33. <td><select disabled="disabled" name="subcat" id="subcat" class="required">
  34. <option value="0">Selecciona opci&oacute;n...</option>
  35. </select>
  36. </td>
  37. </tr>
  38. </tbody>
  39. <tfoot>
  40. <tr>
  41. <td colspan="2">
  42. <input name="modificar" type="submit" id="modificar" value="Modificar" />
  43. <input name="cancelar" type="button" id="cancelar" value="Cancelar" onclick="fn_cerrar();" />
  44. </td>
  45. </tr>
  46. </tfoot>
  47. </table>
  48. </form>
  49. <script language="javascript" type="text/javascript">
  50. $(document).ready(function(){
  51. $("#frm_per").validate({
  52. submitHandler: function(form) {
  53. var respuesta = confirm('\xBFDesea realmente modificar los datos?')
  54. if (respuesta)
  55. form.submit();
  56. }
  57. });
  58. });
  59. function fn_modificar(){
  60. var str = $("#frm_per").serialize();
  61. $.ajax({
  62. url: 'ajax_modificar.php',
  63. data: str,
  64. type: 'post',
  65. success: function(data){
  66. if(data != "")
  67. alert(data);
  68. fn_cerrar();
  69. fn_buscar();
  70. }
  71. });
  72. };
  73. </script>



Y EL AJAX_MODIFICAR.PHP:

Código PHP:
Ver original
  1. <?
  2. include "conexión.php";
  3. include "básico.php";
  4. /*verificamos si las variables se envían*/
  5. if(empty($_POST['nombre']) || empty($_POST['stock']) || empty($_POST['imagen']) || empty($_POST['img2']) || empty($_POST['precio']) || empty($_POST['category']) || empty($_POST['subcat'])){
  6. echo "Usted no ha llenado todos los campos";
  7. }
  8. $id=$_POST['id'];
  9. /*modificar el registro*/
  10. $sql= "UPDATE productos SET nombre_produc='$_POST[nombre]', cant_disponible='$_POST[stock]', imagen='$_POST[imagen]', precio='$_POST[precio]', id_categoria='$_POST[category]', id_subcategoria='$_POST[subcat]', banner='$_POST[img2]' WHERE id='$id'";
  11. $result=mysql_query($sql);
  12. if(!mysql_query($sql))
  13. echo "Error al editar los datos\n$sql";
  14. ?>



Cuando el codigo verifica si se envían las variables, SIEMPRE ME DICE que los campos no se han llenado, pero si pongo ese codigo en comentario SI me edita los datos, peeeero: No me guarda las imgs en la BD Y me muestra un mensaje con mucho codigo loco no reconociendo la variable que me guarda la img.


Espero me puedan ayudar porfavor ya que el detalle de las imgenes es lo unico q me hace falta. GRACIAS!!

Última edición por Triby; 14/08/2013 a las 18:17 Razón: Usa highlight para los códigos, por favor.