Foros del Web » Programando para Internet » PHP »

Duda sobre formulario

Estas en el tema de Duda sobre formulario en el foro de PHP en Foros del Web. Ok tengo este formulario Código HTML: <form action= "funcion.php" method= "post" name= "form1" id= "form1" enctype= "multipart/form-data" > <input name= "fichero" type= "file" size= "50" ...
  #1 (permalink)  
Antiguo 18/08/2008, 23:57
Avatar de Capimaster  
Fecha de Ingreso: agosto-2004
Mensajes: 494
Antigüedad: 19 años, 8 meses
Puntos: 2
Duda sobre formulario

Ok tengo este formulario

Código HTML:
<form action="funcion.php" method="post" name="form1" id="form1" enctype="multipart/form-data">
  <input name="fichero" type="file" size="50" maxlength="150" />
  
  <div align="right"></div>
  <table width="100%" align="center" cellpadding="2" cellspacing="2" bordercolor="#CCCCCC">
    <tr valign="baseline">
      <td><input name="escritor" type="hidden" value="Gobierno Municipal">
      <input name="categoria" type="hidden" value="1ocotlan" /></td>
    </tr>
    <tr valign="baseline">
      <td>Titulo:</td>
    </tr>
    <tr valign="baseline">
      <td><textarea name="titulo" cols="100%"></textarea>
      </td>
    </tr>
    <tr valign="baseline">
      <td><input name="imagen" type="checkbox" value="index.gif" />
        &nbsp;Marca esta casilla si no deseas una imagen de portada
        
        </td>
    </tr>
    <tr valign="baseline">
      <td>Resumen</td>
    </tr>
    <tr valign="baseline">
      <td><textarea name="resumen" cols="100%" rows="5"></textarea>
          <input name="date" type="hidden" value="<? echo date("Y-m-d") ?>" size="32" /> 
               </td>
    </tr>
    <tr valign="baseline">
      <td>Contenido</td>
    </tr>
    <tr valign="baseline">
      <td><?php
$oFCKeditor = new FCKeditor('contenido') ;
$oFCKeditor->BasePath = '../../fckeditor/' ;
$oFCKeditor->Height = '350' ;
$oFCKeditor->Value = '' ;
$oFCKeditor->Create() ;
?>      </td>
    </tr>
    <tr valign="baseline">
      <td align="right" nowrap="nowrap"><div align="center">
        <input type="submit" name="submit" value="Insertar registro" />
      </div></td>
    </tr>
  </table>
  <input type="hidden" name="MM_insert" value="form1" />
</form> 

Quiero mandar un valor mas de un campo llamado ruta

estuve intentando con... <input type="hidden" name="ruta" value="???" />

lo que quiero mandar es el nombre del archivo que estoy subiendo en el campo file....

claro sin que me suba la ruta...
C:\Documents and Settings\Administrador\Escritorio\lorens.jpg

solo quiero que mande el valor de lorens.jpg a mi base de datos es esto posible?
__________________
http://www.elcapitolio.com.mx - Ocotlán, Jalisco, México
  #2 (permalink)  
Antiguo 19/08/2008, 00:27
 
Fecha de Ingreso: junio-2008
Mensajes: 51
Antigüedad: 15 años, 11 meses
Puntos: 0
Respuesta: Duda sobre formulario

Saludos...........
Para obtener el nombre del Archivo...en la pagina que lo va a recibir usa el array:

Código PHP:
$_FILES['fichero']['name']; 
Con esto puedes obtener el nombre del archivo como tal...Espero haber resuelto tu duda.
  #3 (permalink)  
Antiguo 19/08/2008, 16:24
Avatar de Capimaster  
Fecha de Ingreso: agosto-2004
Mensajes: 494
Antigüedad: 19 años, 8 meses
Puntos: 2
Respuesta: Duda sobre formulario

Es que intentente hacer esto.... pero me marca error....


Código PHP:
$editFormAction $_SERVER['PHP_SELF'];
if (isset(
$_SERVER['QUERY_STRING'])) {
  
$editFormAction .= "?" htmlentities($_SERVER['QUERY_STRING']);
}

$ruta $_FILES['fichero']['name'];
if ((isset(
$_POST["MM_insert"])) && ($_POST["MM_insert"] == "form1")) {
  
$insertSQL sprintf("INSERT INTO noticias (id, categoria, titulo, imagen, ruta, resumen, contenido, escritor, `date`) VALUES (%s, %s, %s, %s, '$ruta', %s, %s, %s, %s)",
                       
GetSQLValueString($_POST['id'], "int"),
                       
GetSQLValueString($_POST['categoria'], "text"),
                       
GetSQLValueString($_POST['titulo'], "text"),
                       
GetSQLValueString($_POST['imagen'], "text"),
                       
GetSQLValueString($_POST['ruta'], "text"),
                       
GetSQLValueString($_POST['resumen'], "text"),
                       
GetSQLValueString($_POST['contenido'], "text"),
                       
GetSQLValueString($_POST['escritor'], "text"),
                       
GetSQLValueString($_POST['date'], "date"));
                       


  
mysql_select_db($database_portadas$portadas);
  
$Result1 mysql_query($insertSQL$portadas) or die(mysql_error()); 
a la hora de intentar correrlo me dice que el campo resumen va NULL
__________________
http://www.elcapitolio.com.mx - Ocotlán, Jalisco, México
  #4 (permalink)  
Antiguo 19/08/2008, 17:25
Avatar de Triby
Mod on free time
 
Fecha de Ingreso: agosto-2008
Ubicación: $MX->Gto['León'];
Mensajes: 10.106
Antigüedad: 15 años, 8 meses
Puntos: 2237
Respuesta: Duda sobre formulario

Cambia:
GetSQLValueString($_POST['ruta'], "text"),

por:
GetSQLValueString($ruta, "text"),


Supongo que ya validaste el archivo y lo moviste de temporales a una carpeta adecuada.
  #5 (permalink)  
Antiguo 20/08/2008, 17:42
Avatar de Capimaster  
Fecha de Ingreso: agosto-2004
Mensajes: 494
Antigüedad: 19 años, 8 meses
Puntos: 2
Respuesta: Duda sobre formulario

Gracias Triby esa era la solucion... me sirvio.... gracias...
ahora otra cosa....

tengo...
Código PHP:
$ruta $_FILES['fichero']['name']; 
y eso hace que me inserte en la bd.... archivo.jpg

ahora quiero que mejor me inserte.... redimensionar.php?imagen=archivo.jpg
para lograr esto tengo que.... hacer esto???

Código PHP:
$ruta "redimensionar.php?imagen="$_FILES['fichero']['name']; 
o como seria??


ahora otra cosa... quiero que si viene vacio el campo en vez de insertarme eso.. me ponga...

redimensionar.php?imagen=index.gif

solo cuando venga en blanco...
__________________
http://www.elcapitolio.com.mx - Ocotlán, Jalisco, México
  #6 (permalink)  
Antiguo 20/08/2008, 17:44
Avatar de Ronruby  
Fecha de Ingreso: julio-2008
Ubicación: 18°30'N, 69°59'W
Mensajes: 4.879
Antigüedad: 15 años, 9 meses
Puntos: 416
Respuesta: Duda sobre formulario

$ruta = "redimensionar.php?imagen=".$_FILES['fichero']['name'];

-_- Te falto concatenar con el punto (.)
Y lo de que si viene vacio, eso lo haces con un sencillisimo IF.
  #7 (permalink)  
Antiguo 20/08/2008, 18:09
Avatar de Capimaster  
Fecha de Ingreso: agosto-2004
Mensajes: 494
Antigüedad: 19 años, 8 meses
Puntos: 2
Respuesta: Duda sobre formulario

aaa muchas gracias si sirvio... jiji

oye eso del if... tengo una idea de como hacerlo?....

pero me puedes ayudar con la sintaxis
.
__________________
http://www.elcapitolio.com.mx - Ocotlán, Jalisco, México
  #8 (permalink)  
Antiguo 20/08/2008, 19:33
Avatar de Capimaster  
Fecha de Ingreso: agosto-2004
Mensajes: 494
Antigüedad: 19 años, 8 meses
Puntos: 2
Respuesta: Duda sobre formulario

alguna sugerencia...
__________________
http://www.elcapitolio.com.mx - Ocotlán, Jalisco, México
  #9 (permalink)  
Antiguo 21/08/2008, 03:10
Avatar de DooBie  
Fecha de Ingreso: septiembre-2004
Mensajes: 1.101
Antigüedad: 19 años, 7 meses
Puntos: 71
Respuesta: Duda sobre formulario

Cita:
Iniciado por Capimaster Ver Mensaje
aaa muchas gracias si sirvio... jiji

oye eso del if... tengo una idea de como hacerlo?....

pero me puedes ayudar con la sintaxis
.
no sabes hacer un if()???
  #10 (permalink)  
Antiguo 22/08/2008, 11:53
Avatar de Capimaster  
Fecha de Ingreso: agosto-2004
Mensajes: 494
Antigüedad: 19 años, 8 meses
Puntos: 2
Respuesta: Duda sobre formulario

La verdad no, ya me avente un manual de php que baje y no entendi bien esas cosas basicas..... entiendo como que if quiere decir si pasa esto..... if y si no pasa... else.. pero no se bien la utiliazacion
__________________
http://www.elcapitolio.com.mx - Ocotlán, Jalisco, México
  #11 (permalink)  
Antiguo 22/08/2008, 11:56
Avatar de Capimaster  
Fecha de Ingreso: agosto-2004
Mensajes: 494
Antigüedad: 19 años, 8 meses
Puntos: 2
Respuesta: Duda sobre formulario

Es algo como esto... pero no se como acomodar lo mio



<?php
$variable_nula = NuLl;
if ($variable_nula) {
echo ("La comprobación es VERDADERA");
}
else {
echo ("La comprobación es FALSA");
}
?>
__________________
http://www.elcapitolio.com.mx - Ocotlán, Jalisco, México

Última edición por Capimaster; 22/08/2008 a las 12:05 Razón: Agrego informacion
  #12 (permalink)  
Antiguo 22/08/2008, 12:15
Avatar de Capimaster  
Fecha de Ingreso: agosto-2004
Mensajes: 494
Antigüedad: 19 años, 8 meses
Puntos: 2
Respuesta: Duda sobre formulario

Ok. tengo una idea.. pero no se como acomodarlo...

NOTA: mi campo se llama $ruta, asi es como lo inserto en la base de datos...

pero el if seria algo como asi?

Código PHP:
$vacio NULL;
if (
$vacio) {
echo (
"$ruta = "redimensionar.php?imagen=".$_FILES['fichero']['name'];");
}
else {
echo (
"..images/index.gif");

__________________
http://www.elcapitolio.com.mx - Ocotlán, Jalisco, México
  #13 (permalink)  
Antiguo 22/08/2008, 12:23
Avatar de DooBie  
Fecha de Ingreso: septiembre-2004
Mensajes: 1.101
Antigüedad: 19 años, 7 meses
Puntos: 71
Respuesta: Duda sobre formulario

Cita:
Iniciado por Capimaster Ver Mensaje
Es algo como esto... pero no se como acomodar lo mio



<?php
$variable_nula = NuLl;
if ($variable_nula) {
echo ("La comprobación es VERDADERA");
}
else {
echo ("La comprobación es FALSA");
}
?>
if($ruta == ''){
echo "cadena vacia";
}else{
echo "cadena NO vacia";
}
  #14 (permalink)  
Antiguo 22/08/2008, 18:41
Avatar de Capimaster  
Fecha de Ingreso: agosto-2004
Mensajes: 494
Antigüedad: 19 años, 8 meses
Puntos: 2
Respuesta: Duda sobre formulario

Okay.. ya casi me volvi loco y estoy a pundo de desifrarlo.. pero ya no pude...


Hize lo siguente... el problema es que automaticamente me sube el valor que tenga la variable $ruta y no da chance de hacer el if else osea que al comando SQL INSERT INTO me sube $ruta y no averigua si viene en vacio o si viene con valor...

Que puedo hacer aki?

Código PHP:
$ruta $_FILES['fichero']['name'];

if(
$ruta == ''){
echo 
"../images/spacer.gif";
}else{
echo 
"redimensionar.php?imagen=".$_FILES['fichero']['name'];
}


if ((isset(
$_POST["MM_insert"])) && ($_POST["MM_insert"] == "form1")) {
  
$insertSQL sprintf("INSERT INTO noticias (id, categoria, titulo, imagen, ruta, resumen, contenido, escritor, `date`) VALUES (%s, %s, %s, %s, %s, %s, %s, %s, %s)",
                       
GetSQLValueString($_POST['id'], "int"),
                       
GetSQLValueString($_POST['categoria'], "text"),
                       
GetSQLValueString($_POST['titulo'], "text"),
                       
GetSQLValueString($_POST['imagen'], "text"),
                       
GetSQLValueString($ruta"text"),
                       
GetSQLValueString($_POST['resumen'], "text"),
                       
GetSQLValueString($_POST['contenido'], "text"),
                       
GetSQLValueString($_POST['escritor'], "text"),
                       
GetSQLValueString($_POST['date'], "date")); 
__________________
http://www.elcapitolio.com.mx - Ocotlán, Jalisco, México
  #15 (permalink)  
Antiguo 23/08/2008, 04:13
Avatar de DooBie  
Fecha de Ingreso: septiembre-2004
Mensajes: 1.101
Antigüedad: 19 años, 7 meses
Puntos: 71
Respuesta: Duda sobre formulario

Cita:
Iniciado por Capimaster Ver Mensaje
Okay.. ya casi me volvi loco y estoy a pundo de desifrarlo.. pero ya no pude...


Hize lo siguente... el problema es que automaticamente me sube el valor que tenga la variable $ruta y no da chance de hacer el if else osea que al comando SQL INSERT INTO me sube $ruta y no averigua si viene en vacio o si viene con valor...

Que puedo hacer aki?

Código PHP:
$ruta $_FILES['fichero']['name'];

if(
$ruta == ''){
echo 
"../images/spacer.gif";
}else{
echo 
"redimensionar.php?imagen=".$_FILES['fichero']['name'];
}


if ((isset(
$_POST["MM_insert"])) && ($_POST["MM_insert"] == "form1")) {
  
$insertSQL sprintf("INSERT INTO noticias (id, categoria, titulo, imagen, ruta, resumen, contenido, escritor, `date`) VALUES (%s, %s, %s, %s, %s, %s, %s, %s, %s)",
                       
GetSQLValueString($_POST['id'], "int"),
                       
GetSQLValueString($_POST['categoria'], "text"),
                       
GetSQLValueString($_POST['titulo'], "text"),
                       
GetSQLValueString($_POST['imagen'], "text"),
                       
GetSQLValueString($ruta"text"),
                       
GetSQLValueString($_POST['resumen'], "text"),
                       
GetSQLValueString($_POST['contenido'], "text"),
                       
GetSQLValueString($_POST['escritor'], "text"),
                       
GetSQLValueString($_POST['date'], "date")); 
supongo que seran los nervios o yo que se, pero en el if, no debes hacer un echo, sino que debes hacer una asignacion a la variable $ruta:
Código PHP:
if($ruta == ''){
$ruta "../images/spacer.gif";
}else{
$ruta "redimensionar.php?imagen=".$_FILES['fichero']['name'];

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 05:25.