Ver Mensaje Individual
  #11 (permalink)  
Antiguo 08/10/2009, 14:20
samu22
 
Fecha de Ingreso: abril-2008
Mensajes: 453
Antigüedad: 16 años, 1 mes
Puntos: 16
Respuesta: duda con campo de archivo en php

Cita:
Iniciado por Bertitha Ver Mensaje
OYE SAMU NO ME SALE MIRA TENGO ESTE CODIGO PARA EL INSERT Y DONDE OBTENGO EL VALOR DE LA PRIMER VARIABLE QUE ES $x NO SE COMO PONERLO AHI PORQUE LO QUE GUARDA LA VARIABLE $X ES $x=$_FILES ["prueba"]["name"]; MI PREGUNTA ES QUE PONGO AQUI GetSQLValueString($_POST['$x'], "text"), ESQUE VES QUE TE DIGO QUE ESTO ME LO GENERA EL ASISTENTE ENTONCES NO SE MUCHO.

if ((isset($_POST["MM_insert"])) && ($_POST["MM_insert"] == "form2")) {
$insertSQL = sprintf("INSERT INTO informe (nombre,estatus, id_cliente) VALUES (%s, %s, %s)",
GetSQLValueString($_POST['$x'], "text"),
GetSQLValueString($_POST['estatus'], "int"),
GetSQLValueString($_POST['id_cliente'], "int"));

mysql_select_db($database_Connexion, $Connexion);
$Result1 = mysql_query($insertSQL, $Connexion) or die(mysql_error());
}
el insert lo tenes que hacer en el mismo fichero donde procesas el archivo, sino la variable x va a estar vacia,

cuando procesas la imagen que subiste comprobas que el archivo se haya movido del temporal
en esta linea
Código php:
Ver original
  1. <?php
  2.         //[...]
  3. if(move_uploaded_file ( $_FILES ['prueba']['tmp_name'],$destino){

insertas el registro a la base de datos, en el formulario donde tenes el input de archivo deberias agregar un input type="hidden" con el valor del id de cliente, ya que es un dato que necesitas insertar

Código HTML:
<input type="hidden" name="idCliente" value="<?php $id_cliente ?>" /> 
con esto al enviar la imagen tambien enviaras $_POST['idCliente'] y tendras los datos necesarios para insertar el registro, que deberia quedarte algo asi:

Código php:
Ver original
  1. <?php
  2. if($_POST){
  3.        $x=$_FILES ["prueba"]["name"];
  4.        $destino = 'Informe/'.$x ; // Carpeta donde se guardara
  5.        $sep=explode('image/',$_FILES["prueba"]["type"]); // Separamos image/
  6.        if(move_uploaded_file ( $_FILES ['prueba']['tmp_name'],$destino){
  7.                 mysql_connect('localhost','root','pass');
  8.                 mysql_select_db('nombre_base_de_datos');
  9.                 $sql = "INSERT INTO informe (`nombre_archivo`,`estado`,`id_cliente`)
  10.                            VALUES ('$x',1,$_POST['idCliente'])";
  11.                 mysql_query($sql);
  12.        }
  13. }else {//echo "El archivo supera el peso permitido.";// Si supera el tamaño de permitido lo   desimos
  14. }
  15. ?>