Foros del Web » Programando para Internet » PHP »

Es muy dificil esta consulta, ya que hace como un año que busco la respuesta

Estas en el tema de Es muy dificil esta consulta, ya que hace como un año que busco la respuesta en el foro de PHP en Foros del Web. En la teoria y viendo la poderosa herramienta que es una base de datos, no me resigno a creer que esto no se puede hacer. ...
  #1 (permalink)  
Antiguo 04/05/2008, 14:18
 
Fecha de Ingreso: julio-2007
Ubicación: argentina
Mensajes: 127
Antigüedad: 16 años, 9 meses
Puntos: 0
Es muy dificil esta consulta, ya que hace como un año que busco la respuesta

En la teoria y viendo la poderosa herramienta que es una base de datos, no me resigno a creer que esto no se puede hacer.

Hola amigos, les comento:
en una tabla ademas de campos "nombre" "email" deben (en el registro) indicar una URL. Y yo quisiera en la consulta que esa URL me aparezca "ejecutable" no se si es el término. O sea que la direccion URL, que me aparece cuando hago la consulta, me venga como link para ejecutar alli mismo esa direccion.
He probado mil cosas y nada y lo ultimo es una linea parecida a la de abajo.

Me han dicho de ésta linea: echo "<a href=".$row_linka['url'].">".$row_linka['url']."</a>";

Pero no funciona para nada.

Les dejo abajo, la consulta, le agregué esa linea que decia antes, pero no pasa nada.

Muchas gracias por su ayuda.

Ricardo


<script language="JavaScript">
<!--
function MM_reloadPage(init) { //reloads the window if Nav4 resized
if (init==true) with (navigator) {if ((appName=="Netscape")&&(parseInt(appVersion)==4)) {
document.MM_pgW=innerWidth; document.MM_pgH=innerHeight; onresize=MM_reloadPage; }}
else if (innerWidth!=document.MM_pgW || innerHeight!=document.MM_pgH) location.reload();
}
MM_reloadPage(true);
// -->
</script>
<title>sexo</title>
<body bgcolor="#FFFFFF" background="">
<div align="right">
<?

$base="";
$tabla="";

$conexion=mysql_connect("","","");
mysql_select_db($base,$conexion);

$resultado= mysql_query("SELECT nombre, email, url, categoria FROM linka WHERE (categoria LIKE '%re%' )" ,$conexion);


//linka es el nombre de la tabla,
//el campo URL es donde se ingresa presisamente la URL
//el echo de abajo es el que no funciona para nada (como si no existiera)
//ya que la consulta de arriba la saca perfectamente.



echo "<a href=".$row_linka['url'].">".$row_linka['url']."</a>";

echo "<br>";
echo "<br>";
echo "<br>";
echo "<br>";


echo "<table align=center border=3>";


while($registro=mysql_fetch_row($resultado)){


echo "<tr>";

foreach($registro as $clave){
echo "<td>",$clave,"</td>";
}
}
echo "</table>";




mysql_close();

?>
</div>
  #2 (permalink)  
Antiguo 04/05/2008, 15:35
 
Fecha de Ingreso: marzo-2008
Mensajes: 303
Antigüedad: 16 años, 1 mes
Puntos: 4
Re: [B]Es muy dificil esta consulta, ya que hace como un año que busco la respuesta [

Deberías reportar el tema para que te lo cambien de subforo, ya que tu consulta no tiene nada que ver con AJAX.
Creo que el subforo adecuado es Mysql.

Por cierto, yo no se Mysql pero creo que para alquien que sepa tu consulta no es muy dificil y me extraña que lleves un año intentando hacer eso.
  #3 (permalink)  
Antiguo 04/05/2008, 15:52
 
Fecha de Ingreso: julio-2007
Ubicación: argentina
Mensajes: 127
Antigüedad: 16 años, 9 meses
Puntos: 0
Re: [B]Es muy dificil esta consulta, ya que hace como un año que busco la respuesta [

Es asi y mas todavia....y fijate que estoy aqui porque cuando pregunte en base de datos un forista me dijo que era para AJAX. La verdad no entiendo nada.

Gracias por tu respuesta.

Ricardo
  #4 (permalink)  
Antiguo 04/05/2008, 18:06
 
Fecha de Ingreso: diciembre-2007
Mensajes: 169
Antigüedad: 16 años, 4 meses
Puntos: 6
Re: [B]Es muy dificil esta consulta, ya que hace como un año que busco la respuesta [

Bueno, no se si entendí tu pregunta, podrias ser mas especifico

¿Que es lo que quieres hacer?.
1. Cada vez que llamas a la base de datos preguntando por la url te re-direccione de inmediato:
guardas la url en la base de datos por ejemplo http://www.google.com
y al llamarla con php:

Código PHP:
$sql "SELECT url  FROM mi_tabla WHERE id = '$user'";
$query mysql_query($sql);
$row mysql_fetch_array($query)

header("location:".$row[0]); 
2. Cada vez que llamas a la url de la base de datos se muestre en la web como link:
Código PHP:
$sql "SELECT url  FROM mi_tabla WHERE id = '$user'";
$query mysql_query($sql);
$row mysql_fetch_array($query)

echo 
"<a href='".$row[0]."'>aquí esta el link</a>" 

Bueno mejor podrías formular mejor tu pregunta y decir que es lo que realmente quieres hacer. Eso chau

Última edición por albertcito; 04/05/2008 a las 22:36
  #5 (permalink)  
Antiguo 04/05/2008, 21:00
 
Fecha de Ingreso: julio-2007
Ubicación: argentina
Mensajes: 127
Antigüedad: 16 años, 9 meses
Puntos: 0
Re: [B]Es muy dificil esta consulta, ya que hace como un año que busco la respuesta [

Hola Albertcito.
Gracias por tu ayuda. El tema es asi: Un ejemplo: Tengo una tabla, nombre, email, direccion y les pido una direccion URL de cualquier pagina que le haya resultado interesante y asi compartirla con los demas usuarios. A los demas usuarios les traigo esa direccion sin los otros datos del que me envia la URL. Y quiero que al hacer la consulta llegue como un link, no se si se dice "ejecutable" para que directamente ingresen a esa direccion. Claro, pero viene igual que cualquier otro dato y claro que si no se como programar la consulta es imposible. Me han enviado varias lineas de codigo pero no sale como quiero. Y la ultima fué:

echo "<a href=".$row_linka['url'].">".$row_linka['url']."</a>";

que está mas arriba en la consulta que tengo. Esta linea no hace nada de nada, me devuelve todo pero la URL como cualquier otro dato.

No he probado lo que enviastes, porque queria contestar rapido. Ahora lo pruebo y te digo.
Ojala ahora me hayas comprendido.
Te envio un abrazo y te agradezco lo que pudieras hacer.


Ricardo
  #6 (permalink)  
Antiguo 04/05/2008, 21:45
 
Fecha de Ingreso: julio-2007
Ubicación: argentina
Mensajes: 127
Antigüedad: 16 años, 9 meses
Puntos: 0
Re: [B]Es muy dificil esta consulta, ya que hace como un año que busco la respuesta [

Hola de nuevo.
He probado lo que me enviastes y me tira un error en la linea 26 que como está dispuesta es
echo "<a href='".$row[0]."'></a>";
La ultima linea de tu envio.
Me distes dos y en la otra es mas o menos parecido. Abajo esta la consulta, queria que vieras si esta bien donde coloqué el código o que puede ser??
Le quite a la consulta las lineas de codigo que tiene para buscar en todos los campos, pero que saque solo la URL me conformo. Y por ultimo, hay lineas de codigo mas abajo en la consulta que talves son las que tiran los errores ya que la consulta era para todos los campos.


Abrazos

Ricardo





<script language="JavaScript">
<!--
function MM_reloadPage(init) { //reloads the window if Nav4 resized
if (init==true) with (navigator) {if ((appName=="Netscape")&&(parseInt(appVersion)==4)) {
document.MM_pgW=innerWidth; document.MM_pgH=innerHeight; onresize=MM_reloadPage; }}
else if (innerWidth!=document.MM_pgW || innerHeight!=document.MM_pgH) location.reload();
}
MM_reloadPage(true);
// -->
</script>
<title></title>
<body bgcolor="#FFFFFF" background="">
<div align="right">
<?

$base="******";
$tabla="linka";

$conexion=mysql_connect("","","");
mysql_select_db($base,$conexion);

$sql = "SELECT url FROM linka WHERE id = '$user'";
$query = mysql_query($sql);
$row = mysql_fetch_array($query)
echo "<a href='".$row[0]."'></a>";



echo "<br>";
echo "<br>";
echo "<br>";
echo "<br>";


echo "<table align=center border=3>";


while($registro=mysql_fetch_row($resultado)){


echo "<tr>";

foreach($registro as $clave){
echo "<td>",$clave,"</td>";
}
}
echo "</table>";




mysql_close();

?>
</div>
  #7 (permalink)  
Antiguo 05/05/2008, 08:25
 
Fecha de Ingreso: septiembre-2005
Mensajes: 840
Antigüedad: 18 años, 7 meses
Puntos: 84
Re: [B]Es muy dificil esta consulta, ya que hace como un año que busco la respuesta [

mmmm, no se muy bien que quieres hacer pero weno.

Pongamos que la base de datos esta de la siguiente forma :

ID --------------- Nick ------------------------------------ URL
1 --------------- miSko --------------------- http://www.google.es
2 --------------- miSko2 -------------------- http://www.google.com
3 --------------- miSko3 -------------------- http://www.google.com.ar

entonces seria :

Código PHP:
$qry mysql_query("Select URL from linka where ID='1' ") ;
$url mysql_result($qry,0) ;

// con esto en $url obtendriamos http://www.google.es

echo ' <a href="'.$url.'" target=_blank>'.$url.'</a>' 
Con eso sale perfectamente ^_^
  #8 (permalink)  
Antiguo 05/05/2008, 08:45
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 18 años
Puntos: 2135
Re: [B]Es muy dificil esta consulta, ya que hace como un año que busco la respuesta [

Hola ricala1,

Lo que pones se hace con PHP exclusivamente y no necesitas nada de AJAX:
Código PHP:
<script language="JavaScript">
<!--
function MM_reloadPage(init) { //reloads the window if Nav4 resized
if (init==true) with (navigator) {if ((appName=="Netscape")&&(parseInt(appVersion)==4)) {
document.MM_pgW=innerWidth; document.MM_pgH=innerHeight; onresize=MM_reloadPage; }}
else if (innerWidth!=document.MM_pgW || innerHeight!=document.MM_pgH) location.reload();
}
MM_reloadPage(true);
// -->
</script>
<title>sexo</title>
<body bgcolor="#FFFFFF" background="">
<div align="right">
<?

$base
="";
$tabla="";

$conexion=mysql_connect("","","");
mysql_select_db($base,$conexion);

$resultadomysql_query("SELECT nombre, email, url, categoria FROM linka WHERE (categoria LIKE '%re%' )" ,$conexion);


//linka es el nombre de la tabla,
//el campo URL es donde se ingresa presisamente la URL
//el echo de abajo es el que no funciona para nada (como si no existiera)
//ya que la consulta de arriba la saca perfectamente.



echo "<br>";
echo 
"<br>";
echo 
"<br>";
echo 
"<br>";


echo 
"<table align=center border=3>";


while(
$registro=mysql_fetch_row($resultado)){


echo 
"<tr>";

foreach(
$registro as $clave){
echo 
"<td>",$clave,"</td>";
}
echo 
"<td><a href=".$row_linka['url'].">".$row_linka['url']."</a></td>";
}
echo 
"</table>";




mysql_close();

?>
</div>
Saludos.

Tema trasladado a PHP.
  #9 (permalink)  
Antiguo 05/05/2008, 08:51
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Re: Es muy dificil esta consulta, ya que hace como un año que busco la respuesta

wow.... enserio, necesitamos un foro para "principiantes" lol...
  #10 (permalink)  
Antiguo 05/05/2008, 18:57
 
Fecha de Ingreso: julio-2007
Ubicación: argentina
Mensajes: 127
Antigüedad: 16 años, 9 meses
Puntos: 0
Re: Es muy dificil esta consulta, ya que hace como un año que busco la respuesta

Hola MiSko.
La verdad ver que hice lo que me digistes y salir lo que buscaba desde hace mucho tiempo, me puso muy feliz. Tu respuesta es la justa o sea el código que me enviastes, que está aqui debajo.
------------------------------------------------------------------------------------------------------------------

ID --------------- Nick ------------------------------------ URL
1 --------------- miSko --------------------- http://www.google.es
2 --------------- miSko2 -------------------- http://www.google.com
3 --------------- miSko3 -------------------- http://www.google.com.ar

entonces seria :


Código PHP:
$qry = mysql_query("Select URL from linka where ID='1' ") ;
$url = mysql_result($qry,0) ;

// con esto en $url obtendriamos http://www.google.es

echo ' <a href="'.$url.'" target=_blank>'.$url.'</a>' ;
------------------------------------------------------------------------------------------------------------------

Pero necesito la última que a priori parece mas fácil, pero me encuenta (me parece) con muy pocas fuerzas y sin nada de idea a pesar de haber resuelto casas mas difíciles. No estoy inspirado jajaja.

Bueno....lo que me falta es que me salgan todas las URL que existen en la tabla. Vos pones un WHERE ID= '1' ");
y me sale porsupuesto el correspondiente a ese ID.

Vos hicistes la tabla con ID, nick, URL y yo la tendria con "ID", "url", "categoria" esos serian los campos.
Como quiero que al enviar el link espesifiquen de que se trata ese link, entonces en categoria, ponen por ejemplo "PERRO" y el link corrersponde a todas las páginas que sean de ese tema. No se si me explique bien, me parece que hay otra forma, pero no la encuentro. Y otro ejemplo es que tu haces la busqueda por ID con un numero por ejemplo "1" y me tira solo ese campo, ya que los números no se repiten, pero en la tabla en categoria estaran cientos de temas distintos y por ejemplo cuando busque en categoria "PERRO" que me salgan todos los link correspondiente a "PERROS" Se que con un LIKE se puede hacer porque tengo consultas hechas asi, para espesificar la busqueda, pero me rompi la cabeza y como el tema de extraer la URL es nuevo para mi y lleba mas que una consulta comun, ahi me trabé.

Desde ya mi agradecimiento a lo primero, ya que distes con algo que me canse de consultar.

Y si puedes orientarme en lo otro que mas puedo decir.
No me olvido de los demas chicos que tambien me enviaron sus respuestas y tambien les agradezco.

Un abrazo.

Ricardo
  #11 (permalink)  
Antiguo 06/05/2008, 02:00
 
Fecha de Ingreso: septiembre-2005
Mensajes: 840
Antigüedad: 18 años, 7 meses
Puntos: 84
Re: Es muy dificil esta consulta, ya que hace como un año que busco la respuesta

Si, lo que dices esta facil :P


ID --------------------- URL ----------------------------- CATEGORIA
1 ----------------- http://www.google.es ------------- Perros
2 ----------------- http://www.google.com ----------- Perros
3 ----------------- http://www.google.com.ar -------- Perros
4 ----------------- http://www.msn.es ------------------ Gatos
5 ----------------- http://www.msn.com ---------------- Gatos



Pues seria esto :

Código PHP:

$categoria 
"Perros" ;
$qry mysql_query("Select URL from linka where categoria='$categoria'") ;

while(
$dato mysql_fetch_assoc($qry))
{

$url $dato['URL'] ;

echo 
' <a href="'.$url.'" target=_blank>'.$url.'</a>' ;  



Te dejo un Enlace a la Funcion mysql_fetch_assoc:

http://es.php.net/manual/es/function...etch-assoc.php


Espero que te ayude :]

^_^


PD,Edited : Para comparar Strings es mejor usar el Like que el = que he puesto yo, aunq yo estoy acostumbrado a usar el = y siempre me ha funcionado :P

;)

PD 2 : Acabo d leer algo de que quieres tener las ultimas primeros, eso se arreglaria poniendo a la select:

order by id DESC:
Código PHP:
$qry mysql_query("Select URL from linka where categoria='$categoria' order by id DESC") ; 
y si solo qres obtener 1, y es la ultima :
Código PHP:
$qry mysql_query("Select URL from linka where categoria='$categoria' order by id DESC Limit 1") ; 

Última edición por miSko; 06/05/2008 a las 02:06
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 20:10.