Autor
|
Tema: Otro problema al conectar con la base sql.. (Leído 3,071 veces)
|
Servia
Desconectado
Mensajes: 346
|
Hola, esto si que no me lo explico, tengo un logueo, entro sin problemas pero en cambio cuando intento hacer que saque algo de la base después, me salta con:
Warning: mysql_query() [function.mysql-query]: Can't connect to local MySQL server through socket '/tmp/mysqld.sock' (2) in imagenes.php on line 55
Warning: mysql_query() [function.mysql-query]: A link to the server could not be established in imagenes.php on line 55 Can't connect to local MySQL server through socket '/tmp/mysqld.sock' (2)
Y en esa línea lo que hay es:
$sql="SELECT * FROM images WHERE id='$id'"; $result=mysql_query($sql) or die (mysql_error()); $row=mysql_num_rows($result);
|
|
|
En línea
|
|
|
|
& eDu &
Desconectado
Mensajes: 580
|
Prueba con <? $sql = mysql_query("SELECT * FROM images WHERE id='$id'"); ?>
|
|
|
En línea
|
|
|
|
mit
Desconectado
Mensajes: 830
¡Mit!
|
& eDu & porque habria de probar con lo mismo una duda Servia: Tal vez sea tonto lo que te voy a decir, pero, tu campo id de tu tabla images realmente es de tipo varchar o char ?? se me pasaba xD al parecer es un error con la conexion, el mismo sql te lo dice, rectifica que abres y cierras la conexion donde es debido, rectifica que los datos para la conexion esten correctos, estoy casi seguro que es eso. PD: no siempre el error esta exactamente en la linea que te lo marcan saludos
|
|
« Última modificación: 29 Diciembre 2008, 17:02 pm por mit »
|
En línea
|
|
|
|
Servia
Desconectado
Mensajes: 346
|
Prueba con <? $sql = mysql_query("SELECT * FROM images WHERE id='$id'"); ?>
Entonces me dice: Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource in imagenes.php on line 51 y la línia es la de $row=... juraría que lo hago bien mit, lo que he posteado es todo lo usado para hacerlo.
|
|
|
En línea
|
|
|
|
mit
Desconectado
Mensajes: 830
¡Mit!
|
pues si es todo lo que has usado, entonces tienes un grave error xD primero tienes que establecer conexion con la base de datos jeje, deja te paso un ejemplo:
este archivo lo uso para crear mi conexion:
con.php <? session_start(); function abrir_conexion() { $host = "localhost"; //usually localhost, or ip $nombre_usuario = "root"; // database user $password = "XXXX"; // database pass $base_datos = "mibasededatos"; // database name $con = mysql_connect($host, $nombre_usuario, $password) or die("Cannot Connect"); mysql_select_db($base_datos, $con); $_SESSION["con"] = $con; } ?>
y cuando lo voy a usar, uso lo siguiente:
index.php
$id_usuario=7; abrir_conexion(); $res=mysql_query("select id_usuario FROM usuarios WHERE id_usuario=$id_usuario") or die(mysql_error()); $id_usuario_exist=mysql_num_rows($res); mysql_close($_SESSION["con"]);
Y no tengo ningun problema, te aseguro al 100% que estas haciendo algo mal en tu conexion a la base de datos.
saludos
|
|
|
En línea
|
|
|
|
Servia
Desconectado
Mensajes: 346
|
Voy a probarlo, pero no entiendo como me puede funcionar el registro entonces...
Edito, thanks, pero sigo sin entender como lo hacía antes. Nunca escribía el mysql_connect y igualmente tiraba.
|
|
« Última modificación: 29 Diciembre 2008, 17:41 pm por Servia »
|
En línea
|
|
|
|
mit
Desconectado
Mensajes: 830
¡Mit!
|
Es sencillo mira, te dire como trabaja: Si no usas el mysql_connect, a la hora que hagas tus consultas en el mysql_query, tienes que especificarle la conexion: <? $sql = mysql_query("SELECT * FROM images WHERE id='$id'",conexion); $row = mysql_num_rows($sql); ?> pruebalo y te daras cuenta que ya te funciona. saludos
|
|
|
En línea
|
|
|
|
Servia
Desconectado
Mensajes: 346
|
Explícame esto entonces, tengo lol.php: <? require('config.php'); $id=($_GET["id"]); $condicion=$_SESSION['SESS_MEMBER_LOG']; $sql = "SELECT * FROM noticias WHERE id='".$id."'"; $zql = "SELECT * FROM members WHERE login='".$condicion."'"; if ($gow["rango"]==admin) { echo '<form id="form1" name="form1" method="post" action="modnoticia2.php"> <label>Título: <input type="text" name="titulo" size="56" value="'; echo $row['titulo']; echo'"/> </label> <p> <label>Autor: <input type="text" name="autor" value="'; echo $row['autor']; echo'" /> </label> </p> <p> <label>Texto: <br /> <textarea name="texto" rows="10" cols="60">'; echo $row['texto']; echo'</textarea> </label> </p> <p> <label> <input type="submit" name="Submit" value="Guardar" /> </label> <input type="hidden" name="id" value="'; echo $id; echo'"> </p> </form> <p><a href="bornoticia.php?id='; echo $id; echo'">Eliminar noticia</a></p>'; } else { echo '<img src="ajax.gif" /> Cargando, espera por favor.'; } ?>
y en config.php: <?php define('DB_USER', '***********'); define('DB_PASSWORD', '*******'); define('DB_DATABASE', '********'); ?>
|
|
|
En línea
|
|
|
|
mit
Desconectado
Mensajes: 830
¡Mit!
|
y en que lugar seleccionas la base de datos con la que quieres trabajar? creo que estas frito busca un manual para saber el procedimiento de como establecer conexion con mysql desde php. Para empezar jamas creas una conexion y para empeorar ni siquiera seleccionas una base de datos -.- En tu codigo por ningun lado veo que establescas la conexion y enseima que selecciones la base de datos que quieres usar, el mysql_select_db no es necesario pero te aconsejo establecerlo, ya que cuando quieras ejecutar una consulta, le tendras que pasar el paramentro de la conexion ( que no veo que crees en ningun lugar ) $con = mysql_connect($host, $nombre_usuario, $password) or die("Cannot Connect"); mysql_select_db($base_datos, $con); Espero quede claro saludos
|
|
|
En línea
|
|
|
|
Servia
Desconectado
Mensajes: 346
|
y en que lugar seleccionas la base de datos con la que quieres trabajar? creo que estas frito busca un manual para saber el procedimiento de como establecer conexion con mysql desde php. Para empezar jamas creas una conexion y para empeorar ni siquiera seleccionas una base de datos -.- En tu codigo por ningun lado veo que establescas la conexion y enseima que selecciones la base de datos que quieres usar, el mysql_select_db no es necesario pero te aconsejo establecerlo, ya que cuando quieras ejecutar una consulta, le tendras que pasar el paramentro de la conexion ( que no veo que crees en ningun lugar ) $con = mysql_connect($host, $nombre_usuario, $password) or die("Cannot Connect"); mysql_select_db($base_datos, $con); Espero quede claro saludos Eso es lo que te pido que me expliques, porque funciona XD todos los tengo así.
|
|
|
En línea
|
|
|
|
|
|