Ayuda!!!!!!!!!!!!!!!

Patricia
18 de Octubre del 2003
A ver si alguien me puede ayudar.
En mi página hay varios errores :

- Warning: mysql_fetch_row(): supplied argument is not a valid MySQL result resource in /data/sites/guialoca.com/web/htdocs/includes/sql_layer.php on line 283

- Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource in /data/sites/guialoca.com/web/htdocs/includes/sql_layer.php on line 235

-Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in /data/sites/guialoca.com/web/htdocs/includes/sql_layer.php on line 339

- Warning: mysql_free_result(): supplied argument is not a valid MySQL result resource in /data/sites/guialoca.com/web/htdocs/includes/sql_layer.php on line 491

...No sé qué puede ser. Necesito ayuda urgente.Gracias.

Aldo dell
18 de Octubre del 2003
Hola amigo,
lei un mensaje en un foro en el que ayudaba a alguien a soluionar un problema
con el error:
mysql_fetch_row(): supplied argument is not a valid MySQL result resource

Yo seguí el ejemplo pero en mi caso no funcionó. Tengo el siguiente código:

<html>

<head>
<meta name="GENERATOR" content="Microsoft FrontPage 5.0">
<meta name="ProgId" content="FrontPage.Editor.Document">
<meta http-equiv="Content-Type" content="text/html; charset=windows-1252">
<title>Pagina nueva 1</title>
</head>
<body>

<?php

function ver ($texto) {
echo "<p><hr><p>$texto<p>";
}

ver ("1");


// db variables
// inserts variables accordingly
$host = "localhost";
$user = "alterac_aldodell";
$pass = "sdgh22051980";
$db = "alterac_sistema";
$table = "art";

// connecting to the db
$link = mysql_connect ($host, $user, $pass, $db);
ver ("link=$link");
mysql_info();

// the db query
$q = "SELECT * FROM art";
ver ("cola=$q");


$resultado = mysql_query ("SELECT * FROM art", $link);
ver ("resultado=$resultado");

if (!$resultado)
ver ("Resultado equivocado");


// fetching the results
while ($row = mysql_fetch_row($resultado)) {
echo "$row[0]";
}

// closing the db link
mysql_close ($link);

?>
</body>
</html>



¿Qué estoy haciendo mal?
Héchame una ayudita porfa!!!!
Gracias!!!!!!!!! =)

Aldo.

Spoolk
18 de Octubre del 2003
puede ser q el $link = mysql_connect ($host, $user, $pass, $db); no te funcione.

Como dijo antes un compañero , lo que teneis que hacer es porner or die (" ERROR QUE VAYA A DAR"); me explico ...

Por ejemplo:

Si tu vas a conectar con la B.D. lo que tienes q hacer es :

$link = mysql_connect ("host","usuario","contraseña") or die ("Error no se conecto con la Base de datos");

Con esto se consigue que si por algun motivo no se puede conectar te canta el error.

Esto del or die se puede utilizar para todas las funciones de base de datos como
mysql_query ();
etc

Un salud2.

PD: en tu codigo creo q es a la hora de conectar cuando te falla. miralo .. espero q te sirva de algo



elgeorge
18 de Octubre del 2003
lo mismo, tengo el mismo problema, no se que hacer, creo que todo repercute en el query, ya cheque la sentencia select y esta correctamente, "y ahora quien podrá ayudarnos"......

angel
18 de Octubre del 2003
Hola como ya os han dicho no teneis conexion a la bd
ya hago algo asi como esto que os envio y funciona bien
utilizo una funcion que devuelve la conexion, de esta
forma la utilizo despues en muchas partes del programa.


//Esta es la funcion
function Conectarse($host, $user, $pass, $db){

$link = mysql_connect($host,$user,$pass);
mysql_select_db($db, $link);

// comprobamos que hemos estabecido conexión en el servidor
if (! $link){
echo "<h2 align='center'>ERROR: Imposible establecer conección con el servidor</h2>";
exit();
}
return $link;
}

:
:
:
:

// Aqui un ejemplo de la llamada desde cualquier pagina

<?
$link=conectarse($host, $user, $pass, $db);
$sql = "SELECT * FROM................";
$result=mysql_query($sql, $link);
while($row=mysql_fetch_object($result)){
echo $row->campo_n';
}mysql_free_result($result);
?>

estudiosandia
18 de Octubre del 2003
Hola.

Estos errores son porque vos realizazste una busqueda en mySQL y genero un error.

me explico?

por ejemplo:

$res= mysql_query("select * from tabla");

es valido, y devuelve resultados.

una manera de asegurarte que funciones es la siguiente.

Busca la linea de codigo donde esta la instruccion mySQL_Query, y modificala por esto...

$res= mysql_query("tu consulta SQL",$conexion) or die ("Error en la busqueda");

ahi te vas a dar cuenta si hay un error o no.

Nota: $res, tiene que corresponder con tu variable de resultados, lo mismo que $conexion.

Suerte.