Foros del Web » Programando para Internet » PHP »

Recoger path de un Upload para almacenarla en mysql

Estas en el tema de Recoger path de un Upload para almacenarla en mysql en el foro de PHP en Foros del Web. Cita: Ubicación: Entre montañas... en el norte Tienes que salir de ahí xDD .. mira bien. Pon el código que ya tienes hecho y funcionando ...

  #31 (permalink)  
Antiguo 20/02/2006, 13:20
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 15 años, 11 meses
Puntos: 126
Cita:
Ubicación: Entre montañas... en el norte
Tienes que salir de ahí xDD .. mira bien.

Pon el código que ya tienes hecho y funcionando .. así será mejor guiarte.

No entendí cuando dices "y al pichar encima de ellos aparece la direccion con el id de cada registro, pero al pinchar se queda donde esta."

Tampoco entiendo:
"pero claro pulsas y no muestra nada por que no hay variables relacionadas con los campos de la base de datos... si pongo esas variables no se relacionarlas con una id... no me sale"

¿Acaso no manejas un campo "ID" en tus tablas que es de tipo numérico, unico y autonumérico? .. Eso es el campo que "relaciona" todos los datos de ese registro y que lo hace único (es una "clave primaria"!).

Un saludo,
  #32 (permalink)  
Antiguo 20/02/2006, 13:22
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 15 años, 11 meses
Puntos: 126
Cita:
dame alguna pista que ya me he quedao atascado.
Al final te lo estoy haciendo todo casi a la "carta" .. Espero que entiendas por qué se hacen algunas cosas. Debes tener la soficiente "visión" como para ver el concepto que se está aplicando (y sino, pregunta) .. por qué sino te saldrá esto bien y lo harás pero a la minima que te cambien la "película" no sabras como afrontar el problema.

Un saludo,
  #33 (permalink)  
Antiguo 20/02/2006, 13:58
MindPaniC
Invitado
 
Mensajes: n/a
Puntos:
jajaj deberia salir... pero ha nevado y con este temporal no hay muchas opciones donde ir.

haber si me puedo explicar mejor... por que reconozco que mi leguaje técnico es escaso...

yo tengo este script (como ves... no es nada)

Código PHP:
 <?
$db mysql_connect("localhost","xxxxxxxxxxx","xxxxxxxx");
//comprobamos conexion a la base de datos.
  
if (!$db)
  {
      echo 
'Error: No se pudo conectar con la base de datos. Por favor intentelo mas tarde.';
      exit;
  }
 if ([email protected]
mysql_select_db('xxxxxxxxxxx'))
  {
      echo 
'Error: No se pudo seleccionar la base de datos. Por favor intentelo mas tarde.';
      exit;
  }
  
$sql="SELECT * FROM artistas";
  
$resultado=mysql_query($sql) or die (mysql_error());
  while(
$row=mysql_fetch_array($resultado))
  {
      echo 
"Titulo: ".$row['artnombre']."<br>";
      echo 
"<a href=\"artistas.php?id=".$row['artistaid']."\">Ver ficha</a><br>";
  }
?>
Este script muestra los artistas ordenados por id (1,2,3...) y ahora estoy perdido... debo mostrar estos valores por ejemplo:
Código PHP:
<?
$titulo 
"$row[temanombre]";
$link "$row[temaurl]";
$descripcion "$row[temadescripcion]";
$autor "$row[temaautor]";
una duda... tu te estas basando en crear una pagina nueva qeu tecoja las id's y asi mostrar los datos.. (con un $_GET['id']) o tu te refieres a crear todo en la misma pagina?

???? tengo mil dudas. a que te referias??

Última edición por MindPaniC; 20/02/2006 a las 16:09
  #34 (permalink)  
Antiguo 20/02/2006, 16:35
MindPaniC
Invitado
 
Mensajes: n/a
Puntos:
ni idea... he probado creando otra pagina y llamandola desde ese script, pero al hacer el query a la supesta dicha "id" me dice esto:

Cita:
Unknown column 'id' in 'where clause'
¿como recojo la id?

sinceramtne no tengo ni idea...

saludos

Última edición por MindPaniC; 21/02/2006 a las 02:46
  #35 (permalink)  
Antiguo 21/02/2006, 05:03
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 15 años, 11 meses
Puntos: 126
Cita:
Iniciado por MindPaniC
ni idea... he probado creando otra pagina y llamandola desde ese script, pero al hacer el query a la supesta dicha "id" me dice esto:



¿como recojo la id?

sinceramtne no tengo ni idea...

saludos
Expón la extructura de tu tabla "artistas" .. Parece ser que no tienes definido un campo de nombre "id" (que debe ser autonumérico, único y clave primaria de esa tabla).

El hecho que ese tipo de campo "autonumérico, único y clave primaria" se suela llamar "id" de nombre no es por otra cosa más que por usar un término "standard" .. id= "Identificador" .. así, hablando de un "id" se suele "asumir" que te refiresa a un campo "clave primaria" de una tabla de una BBDD.

Un saludo,
  #36 (permalink)  
Antiguo 21/02/2006, 05:34
MindPaniC
Invitado
 
Mensajes: n/a
Puntos:
esta es la estructura, yo creo que esta bien:

Cita:
`artistas` (
`artistaid` int(10) unsigned NOT NULL auto_increment,
`artnombre` varchar(30) NOT NULL default '',
`artbio` text NOT NULL,
`artfoto` varchar(50) NOT NULL default '',
`artfecha` datetime NOT NULL default '0000-00-00 00:00:00',
PRIMARY KEY (`artistaid`)
) TYPE=MyISAM AUTO_INCREMENT=7 ;
Editado:

¿¿Como obtengo la id por que con el get que me pusiste no recoje la id. ???

¿¿tu decias pasar la id a otra pagina y en esa pagina hacer un quey a la id obtenida??

Última edición por MindPaniC; 21/02/2006 a las 06:04
  #37 (permalink)  
Antiguo 21/02/2006, 06:30
MindPaniC
Invitado
 
Mensajes: n/a
Puntos:
mmmm no llame "id" a ese campo por que la tabla esta en la misma base de datos de los foros... pense que era mejor intentar tener todo en una misma base de datos...

pero ahora que lo pienso quizas es mejor separarlo por diferentes bases de datos.

joder... menudos fallos.
  #38 (permalink)  
Antiguo 21/02/2006, 07:10
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 15 años, 11 meses
Puntos: 126
El dichoso "ID" no es una tabla.. es un "Campo" más de tu tabla (de esa y todas las que crees). Cada tabla y sus campos son "independientes" .. puedes llamarlos como te dé la gana.

En tu caso le llamas "artistaid" y .. digo que es ese por qué veo que le distes propiedad: auto_increment y "not null".

Usa ese campo para tu sentencia SQL:

Código PHP:
<? 
$sql
="SELECT * FROM tabla WHERE artistaid='".$_GET['id']."'";
Reamente ya te he comentado que dá igual como llames a tus campos en tus tablas o que nombres de variables uses para generar tus links .. lo que importa es "entender" por qué se crean así .. o que sentido tiene todo.

(PD: supongo que sabras ejecutar esa sentencia SQL para ver tus registros arrojados? .. concretamente sólo uno debería aparecer o ninguno si no existe).

Un saludo,
  #39 (permalink)  
Antiguo 21/02/2006, 07:25
MindPaniC
Invitado
 
Mensajes: n/a
Puntos:
perfecto funciona, el error estaba en que yo pensaba que funcionaba al reves. yo creia que
en vez de ser asi:
artistaid='".$_GET['id']."'"

era asi:
id='".$_GET['artistaid']."'"

no sabia que se cogia la id en el get... ahora ya me he dado cuenta de como va la vaina.

el tema de los capos qeu componen la tabla si lo tenia claro.. pero como no me salia pensaba ya en cosas extrañas y por eso lie la madeja.

No te preocupes, si se ejecutar la sentencia, ya funciona todo ok.

una ultima pregunta...

¿es posible centralizar todo en un mismo archivo? es decir ver la lista de artistas y al pinchar cambiar el contenido y ver el artista en cuestion (seria con un switch)

¿o es mejor dejalo como esta y ver los datos desde una pagina independiente a la lista y que recoge el id?

yo actualmente lo tengo asi:

artistas.php (cre la direccion prueba.php?id=x)
prueba.php recoge la id y muestra los datos de esa id.

saludos y gracias cluster... espero no haberte dado dolores de cabeza...
  #40 (permalink)  
Antiguo 21/02/2006, 07:47
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 15 años, 11 meses
Puntos: 126
Cita:
¿es posible centralizar todo en un mismo archivo? es decir ver la lista de artistas y al pinchar cambiar el contenido y ver el artista en cuestion (seria con un switch)
Si, .. puedes hacerlo todo en un mismo scritp, sólo necesitas una variable de control que indique que proceso vas hacer.

artistas.php?accion=ver_lista
ó
artistas.php?accion=ver_Detalle%id=3

Y de ahí un if() .. o switch() o como quieras ...

Cita:
¿o es mejor dejalo como esta y ver los datos desde una pagina independiente a la lista y que recoge el id?
Yo soy de esa filosofía .. me gusta tener separado físicamente esos procesos y no tener un enorme script todo lleno de switch() .. Pero sobre gustos como dicen no hay nada escrito ..

Un saludo,
  #41 (permalink)  
Antiguo 21/02/2006, 07:58
MindPaniC
Invitado
 
Mensajes: n/a
Puntos:
Gracias cluster.

Por cierto para si un script de upload reside en un server y deseas subir el archivo a otro server solo se podra ejecutar la subida y colocacion de el archivo via ftp verdad??.

es que estoy tambien diseñando el sistema de upload pero integrandole protocolo ftp para subir a un servidor diferente a donde reside el script.

saludos
  #42 (permalink)  
Antiguo 21/02/2006, 08:06
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 15 años, 11 meses
Puntos: 126
Cita:
Por cierto para si un script de upload reside en un server y deseas subir el archivo a otro server solo se podra ejecutar la subida y colocacion de el archivo via ftp verdad??.
El proceso de Upload en si será por HTTP con tu actual script .. pero en lugar de hacer el "move_uploaded_file()" usaras las funciones de PHP para FTP (www.php.net/ftp) para conectarte a tu otro servidor y dejar allá el archivo.

De hecho podrías usar para toto FTP .. aunque tus archivos queden "locales" (siempre por supuesto que el servidor "local" soporte y tengas una cuenta FTP en el creada). Eso trae una desventaja: rendimiento; entre "negociar" la autentificación FTP y demás algunos procesos se demoran un poco más. Pero trae la ventaja principal de poder funcionar bajo servidores con "safe mode" activado en PHP y no tiene problemas de "permisos" de archivos que ajustar como suele pasar si los archivos los mueve PHP .. quedan bajo el usuario que use PHP en ese servidor que normalmente (en configuraciónes "PHP como módulo de Apache") es diferente al usuario que se asigna para entrar por "FTP" al sistema de archivos de ese servidor (y es ahí donde llegan los problemas cuando tienes un archivo que subió con tal usuario y lo pretendes modificar con otro ...).

Un saludo,
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 11:04.