Foros del Web » Programando para Internet » PHP »

Cargar imágenes, eligiendo categoría de destino.

Estas en el tema de Cargar imágenes, eligiendo categoría de destino. en el foro de PHP en Foros del Web. Hola que tal amigos, tengo un pequeño problema. Tengo un formulario para cargar imágenes y enviar ruta a base de datos, pero por ejemplo, las ...
  #1 (permalink)  
Antiguo 01/02/2011, 15:03
 
Fecha de Ingreso: enero-2011
Ubicación: C,M
Mensajes: 44
Antigüedad: 13 años, 9 meses
Puntos: 2
Pregunta Cargar imágenes, eligiendo categoría de destino.

Hola que tal amigos, tengo un pequeño problema.

Tengo un formulario para cargar imágenes y enviar ruta a base de datos, pero por ejemplo, las imágenes deben estar en categorías, en este caso una categoría sería una carpeta, la duda que tengo es como lograr que elijan la categoría a la que se desea enviar esa imagen.

Estoy utilizando listbox donde estoy incluyendo las categorías, solo ocupo enlazar ese list, con las carpetas, así mismo cuando agregue una carpeta (categoría) se agregue directamente al listbox.

Cual quier ayuda, idea o recomendación sera agradecida.

De antemano, gracias.

Saludos
Jakob
  #2 (permalink)  
Antiguo 01/02/2011, 15:11
 
Fecha de Ingreso: noviembre-2009
Mensajes: 535
Antigüedad: 15 años
Puntos: 25
Respuesta: Cargar imágenes, eligiendo categoría de destino.

se es un formulario seria mejor utilizar select
ose:
<select name="categoria">
<option values="sub_categoria1">nombre categoria</option>
<option values="sub_categoria2">nombre categoria</option>
<option values="sub_categoria3">nombre categoria</option>
</select>
  #3 (permalink)  
Antiguo 01/02/2011, 15:12
 
Fecha de Ingreso: enero-2011
Ubicación: C,M
Mensajes: 44
Antigüedad: 13 años, 9 meses
Puntos: 2
Respuesta: Cargar imágenes, eligiendo categoría de destino.

Cita:
Iniciado por arros Ver Mensaje
se es un formulario seria mejor utilizar select
ose:
<select name="categoria">
<option values="sub_categoria1">nombre categoria</option>
<option values="sub_categoria2">nombre categoria</option>
<option values="sub_categoria3">nombre categoria</option>
</select>
Gracias por responder, entonces en ese caso, tendría que guardar el nombre de las carpetas en la base de datos, para mostrarlos en el select?

Por que al crear la categoría, pues trataría de guardar el nombre y ruta de la carpeta, para después mostrarlo, pero aun tengo la duda de como se agregarían en el select.
  #4 (permalink)  
Antiguo 01/02/2011, 15:14
 
Fecha de Ingreso: noviembre-2009
Mensajes: 535
Antigüedad: 15 años
Puntos: 25
Respuesta: Cargar imágenes, eligiendo categoría de destino.

esto sera su eleccion hay muchas formas pero guardar el nombre de categoria personalmente es mas fazil
  #5 (permalink)  
Antiguo 01/02/2011, 15:15
Avatar de bullarobert  
Fecha de Ingreso: enero-2011
Mensajes: 31
Antigüedad: 13 años, 9 meses
Puntos: 0
Respuesta: Cargar imágenes, eligiendo categoría de destino.

no es necesario despues lo llamas con el nombre q le pusiste, seria algo asi:

$var_categoria=($_POST['categoria']);
  #6 (permalink)  
Antiguo 01/02/2011, 15:16
 
Fecha de Ingreso: enero-2011
Ubicación: C,M
Mensajes: 44
Antigüedad: 13 años, 9 meses
Puntos: 2
Respuesta: Cargar imágenes, eligiendo categoría de destino.

Cita:
Iniciado por arros Ver Mensaje
esto sera su eleccion hay muchas formas pero guardar el nombre de categoria personalmente es mas fazil
Gracias por la recomendación.
Saludos
Jakob
  #7 (permalink)  
Antiguo 01/02/2011, 15:17
 
Fecha de Ingreso: enero-2011
Ubicación: C,M
Mensajes: 44
Antigüedad: 13 años, 9 meses
Puntos: 2
Respuesta: Cargar imágenes, eligiendo categoría de destino.

Cita:
Iniciado por bullarobert Ver Mensaje
no es necesario despues lo llamas con el nombre q le pusiste, seria algo asi:

$var_categoria=($_POST['categoria']);
Muchas gracias por tu respuesta , creo que si seria mas fácil, entonces hay tendría que relacionarlo con el nombre en la base? o haría una dirección hacia la carpeta?

Por que tendría que hacer un while antes para realizar la consulta, no?
  #8 (permalink)  
Antiguo 01/02/2011, 15:20
 
Fecha de Ingreso: noviembre-2009
Mensajes: 535
Antigüedad: 15 años
Puntos: 25
Respuesta: Cargar imágenes, eligiendo categoría de destino.

porque no pones el codigo así veremos como hacerlo?
  #9 (permalink)  
Antiguo 01/02/2011, 15:28
Avatar de bullarobert  
Fecha de Ingreso: enero-2011
Mensajes: 31
Antigüedad: 13 años, 9 meses
Puntos: 0
Respuesta: Cargar imágenes, eligiendo categoría de destino.

Cita:
Iniciado por arros Ver Mensaje
se es un formulario seria mejor utilizar select
ose:
<select name="categoria">
<option values="sub_categoria1">nombre categoria</option>
<option values="sub_categoria2">nombre categoria</option>
<option values="sub_categoria3">nombre categoria</option>
</select>
al hacerlo de esta forma estas fijando los valores sin entrar en la base de datos, para sacarlos de la BD tendrias q hacer una consulta, algo asi:

Código PHP:
Ver original
  1. ?php
  2. $link=mysql_connect("nombre_servidor","nombre_usuario_si_tiene","password_si_tiene";
  3. mysql_select_db("data_base",$link);
  4. echo"<select name=nombre_dado id=nombre_dado>";
  5.  
  6. $sql="SELECT campo FROM tabla";
  7. $result=mysql_query($sql);
  8. $i=0;
  9. while ($row=mysql_fetch_row($result))
  10. {
  11. echo "<option value=".$row[$i].">".$row[$i]."</option>\n";
  12. }
  13. echo "</select>";
  14. ?>
  #10 (permalink)  
Antiguo 01/02/2011, 15:31
 
Fecha de Ingreso: enero-2011
Ubicación: C,M
Mensajes: 44
Antigüedad: 13 años, 9 meses
Puntos: 2
Respuesta: Cargar imágenes, eligiendo categoría de destino.

Código HTML:
<form action="<?php echo $_SERVER['PHP_SELF'] ?>" method="post" enctype="multipart/form-data">  
 <h3> Formulario para enviar datos</h3>
    <br> Obra: &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<input name="nombre_archivo" type="text" size="70" maxlength="70"> 
    <br> Nº Contrato:&nbsp; <input name="description" type="text" size="20" maxlength="250"> 
    <br> Lugar: &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <input name="lugar_obra" type="text" size="20" maxlength="70"> 
    <br> Fecha:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<input name="fecha_obra" type="text" size="20" maxlength="70"> 
    <br> Supervisor:&nbsp;&nbsp;&nbsp;&nbsp;<input name="supervisor_obra" type="text" size="20" maxlength="70"> 
    <br>Imagen: <input name="fichero" type="file" size="150" maxlength="150">  
    <br> 
    	<form method="POST" enctype="multipart/form-data" action="subir.php">
<p align="left">
<select name="destino">
<option>[Seleccione la categoria]</option>
<option value="categoria1/a/">Categoria</option>
<option value="categoria1/b/">Categoria2</option>
<option value="categoria1/c/">Categoria3</option>
</select></p>
</p>
</form>
<tr>
  <input name="submit" type="submit" value="Enviar">   
</form>  
</body>


Aunque estube pensando un poco y del por que no hacer lo siguiente:

Código PHP:
$consulta_sql=mysql_query("select id_categoria"); 

while ($registro = mysql_fetch_array($consulta_sql))
{
?>
        <option value="<?=$registro["id_categoria"];?>">
          <?=$registro["nom_seccion"].", ".$registro["nom_categ"];?>
          </option>
        <?
y de esa forma haría la consulta con el id, y me lo mostraría en el option.

Cren que seria correcto?
  #11 (permalink)  
Antiguo 01/02/2011, 15:32
 
Fecha de Ingreso: enero-2011
Ubicación: C,M
Mensajes: 44
Antigüedad: 13 años, 9 meses
Puntos: 2
Respuesta: Cargar imágenes, eligiendo categoría de destino.

Cita:
Iniciado por bullarobert Ver Mensaje
al hacerlo de esta forma estas fijando los valores sin entrar en la base de datos, para sacarlos de la BD tendrias q hacer una consulta, algo asi:

Código PHP:
Ver original
  1. ?php
  2. $link=mysql_connect("nombre_servidor","nombre_usuario_si_tiene","password_si_tiene";
  3. mysql_select_db("data_base",$link);
  4. echo"<select name=nombre_dado id=nombre_dado>";
  5.  
  6. $sql="SELECT campo FROM tabla";
  7. $result=mysql_query($sql);
  8. $i=0;
  9. while ($row=mysql_fetch_row($result))
  10. {
  11. echo "<option value=".$row[$i].">".$row[$i]."</option>\n";
  12. }
  13. echo "</select>";
  14. ?>

A ok, perfecto, creo que con eso puedo lograr hacerlo funcionar..Muchas gracias por las respuestas, cuando lo termine les comento, a ver si puedo ayudar a alguien que ocupe algo parecido. Si tengo alguna duda, lo pondré aquí, gracias.

Aunque creo que a la hora de agregar la categoría junto con el mkdir, hay mismo incluya el enlace a la base de datos con su tabla categorías y se agregue.
Saludos
jakob

Última edición por Rudeck; 01/02/2011 a las 15:37
  #12 (permalink)  
Antiguo 01/02/2011, 15:55
 
Fecha de Ingreso: noviembre-2009
Mensajes: 535
Antigüedad: 15 años
Puntos: 25
Respuesta: Cargar imágenes, eligiendo categoría de destino.

prueba esto :
Código PHP:
Ver original
  1. <?php
  2. $link = mysql_connect("nombre_servidor","nombre_usuario_si_tiene","password_si_tiene");
  3. mysql_select_db("data_base",$link);
  4. echo"<select name=nombre_dado id=nombre_dado>";
  5.  
  6. $sql="SELECT campo FROM tabla";
  7. $result=mysql_query($sql);
  8. while ($row=mysql_fetch_array($result))
  9. $cat = $row['categoria']; // cat el el nombre o id de categoria que quieres sacar
  10. {
  11. echo "<option value=".$cat.">".$cat."</option>\n";
  12. }
  13. echo "</select>";
  14. ?>
  #13 (permalink)  
Antiguo 01/02/2011, 19:18
 
Fecha de Ingreso: enero-2011
Ubicación: C,M
Mensajes: 44
Antigüedad: 13 años, 9 meses
Puntos: 2
Respuesta: Cargar imágenes, eligiendo categoría de destino.

Hola arros, mira que ya utilice el código, y si me muestra las categorías, pero no logro enviar el nombre de estas al crear la carpeta, este es mi código:

crear.php
Código PHP:
<?php
if ($_POST['makedir'] == "MakeDir" && $_POST['nombre'] != ""){ 
   
$content=$_POST["nombre"];
   
$dirmake=mkdir($content0777);
   
//conectamos a la base de datos para almacenar los datos y la ruta del archivo 

                
mysql_connect('127.0.0.1','root','devddd13')or die ('Ha fallado la conexión: '.mysql_error()); 
                
mysql_select_db('obras')or die ('Error al seleccionar la Base de Datos: '.mysql_error()); 
                 
//Hacemos en enlace de las tablas

                              
$name  $_POST["nombre"]; 
                  
$description  $_POST["description"]; 
                 
$ruta  $_POST["tmp_name"]; 
                  
                  
                   
$query "INSERT INTO category  
   VALUES (0,'$name','$description' "


      
mysql_query($query) or die(mysql_error()); 
    echo 
"La categoria '".$name."' ha sido registrado de manera satisfactoria.<br />"
   
   echo 
"<div align=\"center\">\n";
   echo 
"<a href=\"$content\">Clic para ver la categoria</a>\n";
   echo 
"</div>\n";
}

?>
form.html

Código HTML:
<form method="POST" action="crear.php?action=direct">
Nombre de categoria:<br><input type="text" name="nombre" size="30" />
<br>Descripcion:<br><input type="text" name="description" size="50" />
<br />
<input type="submit" name="makedir" value="Crear categoria" />
</form> 
Pero no me envía el nombre y la ruta de la categoría(carpeta) a la Base de datos, alguna idea?
  #14 (permalink)  
Antiguo 01/02/2011, 23:41
 
Fecha de Ingreso: noviembre-2009
Mensajes: 535
Antigüedad: 15 años
Puntos: 25
Respuesta: Cargar imágenes, eligiendo categoría de destino.

mira se esto te sirvera
Código PHP:
Ver original
  1. <form action="<?php htmlspecialchars($_SERVER['PHP_SELF']); ?>?direct" method="post">
  2. <label for="categoria">Nombre de categoria :</label>
  3. <input type="text" name="nombre" size="30" />
  4. <label for="Descripcion">Descripcion:</label>
  5. <input type="text" name="description" size="50" />
  6. <input type="submit" name="makedir" value="Crear categoria" />
  7. </form>
  8. <?php
  9. if(isset($_GET['direct']))
  10.  
  11.     {
  12.        
  13.     $categoria = $_POST['nombre']; 
  14.     $nombre_carpeta = str_replace(" ", "", $categoria); // elimina espacio en blanco del nombre de carpeta
  15.     //$nombre = $_POST['nombre'];
  16.     $Descripcion = $_POST['description'];
  17.    
  18.    
  19.     // crear carpeta
  20.     if(!is_dir($nombre_carpeta)){
  21.     mkdir($nombre_carpeta, 0700);
  22.     }
  23.     // insert to datebase....
  24.     }
  25.   ?>
ya me diras :D

Etiquetas: destino
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 15:24.