Foros del Web » Programando para Internet » PHP »

[SOLUCIONADO] No database selected Php y Mysql

Estas en el tema de No database selected Php y Mysql en el foro de PHP en Foros del Web. Hola amigos, estoy haciendo una pequeña pagina web con php y mysql y tengo el siguiente error: Warning: mysql_fetch_row() expects parameter 1 to be resource, ...
  #1 (permalink)  
Antiguo 20/07/2015, 21:11
 
Fecha de Ingreso: julio-2015
Ubicación: Lima
Mensajes: 23
Antigüedad: 8 años, 9 meses
Puntos: 0
No database selected Php y Mysql

Hola amigos, estoy haciendo una pequeña pagina web con php y mysql y tengo el siguiente error:

Warning: mysql_fetch_row() expects parameter 1 to be resource, boolean given in C:\xampp\htdocs\productos.php on line 352
No database selected
.

Mi codigo es bien sencillo la verdad.

Esta es la conexion a la base de datos: conexion.php

<?php
//datos para la coneccion a mysql
define('DB_SERVER','localhost');
define('DB_NAME','prueba');
define('DB_USER','');
define('DB_PASS','');
//cadena de conexion
$con = mysql_connect(DB_SERVER,DB_NAME,DB_USER,DB_PASS);
//iniciar la conexion
mysql_select_db(DB_NAME,$con);
?>

Y mi consulta es esta: productos.php

<?php
//invocamos la conexion
include("conexion.php");

//realizamos la consulta sql
$sql_result = mysql_query("SELECT idmarca, desmarca FROM marca");
$row = mysql_fetch_row($sql_result) or die (mysql_error());

if ($row[0]>=1) {
while ($row = mysql_fetch_row($sql_result)){
echo "id: " . $row[0]. " - Nombre: " . $row[1]. "<br>";
}
} else {
echo "0 resultados";
}
//cerramos la conexion
mysql_close($con);
?>

La conexion a la BD esta bien, al parecer el problema esta en la consulta que hago en productos.php.
Si pudieran ayudarme a solucionar el problema se los agradeceria mucho.
Saludos.
  #2 (permalink)  
Antiguo 20/07/2015, 21:25
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: No database selected Php y Mysql

Seguramente la consulta produce un error, ¿cómo verificas si ocurre un error?
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #3 (permalink)  
Antiguo 20/07/2015, 22:11
Avatar de chronos682  
Fecha de Ingreso: febrero-2004
Ubicación: Tunja - Boyacá - Colombia
Mensajes: 627
Antigüedad: 20 años, 2 meses
Puntos: 69
Respuesta: No database selected Php y Mysql

Estás haciendo mal la conexión aquí

Código PHP:
Ver original
  1. $con = mysql_connect(DB_SERVER,DB_NAME,DB_USER,DB_PASS);

Debería ser así:

Código php:
Ver original
  1. $con =  mysql_connect(DB_SERVER, DB_USER, DB_PASS);

Y de paso te recomiendo que ya no uses más la extensión mysql y migres a mysqli porque a partir de las nuevas versiones de php ya no van a funcionar.

MySQLi
__________________
Si te gustó la respuesta dale +1

HERNÁN G. SIABATO M.
[email protected]
  #4 (permalink)  
Antiguo 20/07/2015, 23:51
Avatar de NueveReinas  
Fecha de Ingreso: septiembre-2013
Ubicación: No tan Buenos Aires
Mensajes: 1.101
Antigüedad: 10 años, 7 meses
Puntos: 145
Respuesta: No database selected Php y Mysql

Cita:
Iniciado por chronos682 Ver Mensaje
Estás haciendo mal la conexión aquí

Código PHP:
Ver original
  1. $con = mysql_connect(DB_SERVER,DB_NAME,DB_USER,DB_PASS);

Debería ser así:

Código php:
Ver original
  1. $con =  mysql_connect(DB_SERVER, DB_USER, DB_PASS);

Y de paso te recomiendo que ya no uses más la extensión mysql y migres a mysqli porque a partir de las nuevas versiones de php ya no van a funcionar.

MySQLi
Añadiría una sola cosa:

Código php:
Ver original
  1. $con =  mysql_connect(DB_SERVER, DB_USER, DB_PASS, DB_NAME);
__________________
¿Te sirvió la respuesta? Deja un +1
  #5 (permalink)  
Antiguo 21/07/2015, 00:46
Avatar de chronos682  
Fecha de Ingreso: febrero-2004
Ubicación: Tunja - Boyacá - Colombia
Mensajes: 627
Antigüedad: 20 años, 2 meses
Puntos: 69
Respuesta: No database selected Php y Mysql

Cita:
Iniciado por NueveReinas Ver Mensaje
Añadiría una sola cosa:

Código php:
Ver original
  1. $con =  mysql_connect(DB_SERVER, DB_USER, DB_PASS, DB_NAME);
Según el manual de php.net el nombre de la DB no es un parámetro de mysql_connect:

Código PHP:
Ver original
  1. resource mysql_connect ([ string $server = ini_get("mysql.default_host") [, string $username = ini_get("mysql.default_user") [, string $password = ini_get("mysql.default_password") [, bool $new_link = false [, int $client_flags = 0 ]]]]] )

A diferencia de mysqli en la que sí es parámetro:

Código php:
Ver original
  1. mysqli::__construct ([ string $host = ini_get("mysqli.default_host") [, string $username = ini_get("mysqli.default_user") [, string $passwd = ini_get("mysqli.default_pw") [, string $dbname = "" [, int $port = ini_get("mysqli.default_port") [, string $socket = ini_get("mysqli.default_socket") ]]]]]] )

Por lo cual para seleccionar la BD debería seguir utilizando:

Código PHP:
Ver original
  1. mysql_select_db(DB_NAME,$con);
__________________
Si te gustó la respuesta dale +1

HERNÁN G. SIABATO M.
[email protected]
  #6 (permalink)  
Antiguo 21/07/2015, 00:57
Avatar de NueveReinas  
Fecha de Ingreso: septiembre-2013
Ubicación: No tan Buenos Aires
Mensajes: 1.101
Antigüedad: 10 años, 7 meses
Puntos: 145
Respuesta: No database selected Php y Mysql

Cita:
Iniciado por chronos682 Ver Mensaje
Según el manual de php.net el nombre de la DB no es un parámetro de mysql_connect:

Código PHP:
Ver original
  1. resource mysql_connect ([ string $server = ini_get("mysql.default_host") [, string $username = ini_get("mysql.default_user") [, string $password = ini_get("mysql.default_password") [, bool $new_link = false [, int $client_flags = 0 ]]]]] )

A diferencia de mysqli en la que sí es parámetro:

Código php:
Ver original
  1. mysqli::__construct ([ string $host = ini_get("mysqli.default_host") [, string $username = ini_get("mysqli.default_user") [, string $passwd = ini_get("mysqli.default_pw") [, string $dbname = "" [, int $port = ini_get("mysqli.default_port") [, string $socket = ini_get("mysqli.default_socket") ]]]]]] )

Por lo cual para seleccionar la BD debería seguir utilizando:

Código PHP:
Ver original
  1. mysql_select_db(DB_NAME,$con);
Agradezco la información, desconocía ese detalle.

De todas formas, mejor utilizar MySQLi, ¿no?
__________________
¿Te sirvió la respuesta? Deja un +1
  #7 (permalink)  
Antiguo 21/07/2015, 01:00
Avatar de chronos682  
Fecha de Ingreso: febrero-2004
Ubicación: Tunja - Boyacá - Colombia
Mensajes: 627
Antigüedad: 20 años, 2 meses
Puntos: 69
Respuesta: No database selected Php y Mysql

Cita:
Iniciado por NueveReinas Ver Mensaje
Agradezco la información, desconocía ese detalle.

De todas formas, mejor utilizar MySQLi, ¿no?
Eso sí es más que claro, por eso se lo sugerí al usuario en la primera respuesta, ahora veamos qué opina él.
__________________
Si te gustó la respuesta dale +1

HERNÁN G. SIABATO M.
[email protected]
  #8 (permalink)  
Antiguo 21/07/2015, 09:28
 
Fecha de Ingreso: julio-2015
Ubicación: Lima
Mensajes: 23
Antigüedad: 8 años, 9 meses
Puntos: 0
Respuesta: No database selected Php y Mysql

Hola amigos, gracias por sus respuestas. Cambie el modo de conectarme a la BD de esta manera:

<?php
//datos para la coneccion a mysql
define('DB_SERVER','localhost');
define('DB_NAME','prueba');
define('DB_USER','');
define('DB_PASS','');
//cadena de conexion
$con = mysql_connect(DB_SERVER,DB_USER,DB_PASS);
if(!$con){
echo 'no se pudo conectar';
}else{
echo 'Conexion exitosa';
}
//iniciar la conexion
mysql_select_db(DB_NAME,$con);
?>
Y pues si se conecta correctamente; Sin embargo, el error persiste:

Conexion exitosa
Warning: mysql_fetch_row() expects parameter 1 to be resource, boolean given in C:\xampp\htdocs\productos.php on line 352
No database selected
  #9 (permalink)  
Antiguo 21/07/2015, 09:29
Avatar de chronos682  
Fecha de Ingreso: febrero-2004
Ubicación: Tunja - Boyacá - Colombia
Mensajes: 627
Antigüedad: 20 años, 2 meses
Puntos: 69
Respuesta: No database selected Php y Mysql

Coloca el código completo en donde se vea el mysql_fetch_row() para ver qué estás haciendo mal.
__________________
Si te gustó la respuesta dale +1

HERNÁN G. SIABATO M.
[email protected]
  #10 (permalink)  
Antiguo 21/07/2015, 09:31
Avatar de xfxstudios  
Fecha de Ingreso: junio-2015
Ubicación: Valencia - Venezuela
Mensajes: 2.448
Antigüedad: 8 años, 10 meses
Puntos: 263
Respuesta: No database selected Php y Mysql

y si muestras el codigo para saber cual es la linea 352????????
__________________
[email protected]
HITCEL
  #11 (permalink)  
Antiguo 21/07/2015, 09:45
 
Fecha de Ingreso: julio-2015
Ubicación: Lima
Mensajes: 23
Antigüedad: 8 años, 9 meses
Puntos: 0
Respuesta: No database selected Php y Mysql

Buenas, esta es mi consulta, tambien señalo la linea 352
<?php
//invocamos la conexion
include("conexion.php");

//realizamos la consulta sql
$sql_result = mysql_query("SELECT idmarca, desmarca FROM marca;");
$row = mysql_fetch_row($sql_result) or die (mysql_error()); //linea 352

if ($row[0]>=1) {
while ($row = mysql_fetch_row($sql_result)){
echo "id: " . $row[0]. " - Nombre: " . $row[1]. "<br>";
}
} else {
echo "0 resultados";
}
//cerramos la conexion
mysql_close($con);
?>

Saludos.
  #12 (permalink)  
Antiguo 21/07/2015, 09:57
Avatar de chronos682  
Fecha de Ingreso: febrero-2004
Ubicación: Tunja - Boyacá - Colombia
Mensajes: 627
Antigüedad: 20 años, 2 meses
Puntos: 69
Respuesta: No database selected Php y Mysql

Agrega esto a ver si hay error al hacer el query:

Cita:
Iniciado por VolKe Ver Mensaje
Buenas, esta es mi consulta, tambien señalo la linea 352
<?php
//invocamos la conexion
include("conexion.php");

//realizamos la consulta sql
$sql_result = mysql_query("SELECT idmarca, desmarca FROM marca;");
if (!$sql_result) {
echo 'Error: ' . mysql_error();
exit;
}
$row = mysql_fetch_row($sql_result) or die (mysql_error()); //linea 352

if ($row[0]>=1) {
while ($row = mysql_fetch_row($sql_result)){
echo "id: " . $row[0]. " - Nombre: " . $row[1]. "<br>";
}
} else {
echo "0 resultados";
}
//cerramos la conexion
mysql_close($con);
?>

Saludos.
__________________
Si te gustó la respuesta dale +1

HERNÁN G. SIABATO M.
[email protected]
  #13 (permalink)  
Antiguo 21/07/2015, 10:09
 
Fecha de Ingreso: julio-2015
Ubicación: Lima
Mensajes: 23
Antigüedad: 8 años, 9 meses
Puntos: 0
Respuesta: No database selected Php y Mysql

Hola Chronos, agregé el "or die (mysql_error());" y me salio el mensaje:

Conexion exitosa
Error: No database selected.

El script que tenia en mysql workbench lo ejecuté en el phpmyadmin, agregando un nuevo usuario con todos los privilegios. Cambie los datos de conexion.php y ya funciona.

Conexion exitosa

id: 2 - Nombre: Apple
id: 3 - Nombre: Samsung
id: 4 - Nombre: Acer

Muchas gracias por la ayuda.

Etiquetas: database, mysql, select, selected, sql
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 05:28.