dominios y alojamiento web en hostalia

Error No Database selected

Hola a todos, tengo una web local (en mi pc) y al quererla subir al hosting que contraté y probarla, me marca "No database selected". Mi...

La FAQ Error No Database selected tiene

Pertenece a la categoría:

Pregunta
Hola a todos, tengo una web local (en mi pc) y al quererla subir al hosting que contraté y probarla, me marca "No database selected". Mi aplicación está hecha en Dreamweaver y el archivo PHP de conexión está en este formato. He buscado en varios sitios de la red y no encuentro respuesta por lo que pido su ayuda, el código del archivo de conexión está así;
conn.php
<?php
# FileName="Connection_php_mysql.htm"
# Type="MYSQL"
# HTTP="true"
$hostname_conn = "localhost";
$database_conn = "mydominio_bd";
$username_conn = "midominio_usuario";
$password_conn = "pass";
$conn = mysql_connect($hostname_conn, $username_conn, $password_conn) or trigger_error(mysql_error(),E_USER_ERROR);
?>

Página de búsqueda "buscar.php"
<?php require_once('../Connections/conn.php');
...
mysql_select_db($database_conn, $conn);
$query_buscar = "SELECT sNoParte,gFoto1,sDescCorta FROM tproducto WHERE sDescCorta LIKE '%carro%' ORDER BY sDescCorta";
$buscar = mysql_query($query_buscar, $conn) or die(mysql_error());
$row_buscar = mysql_fetch_assoc($buscar);
$totalRows_buscar = mysql_num_rows($buscar);
?>

He probado con mysql_pconnect() y tampoco funciona.
¿Le ha sucedido a alguien algo así?
SALUDOS


Respuesta de jorge
para comenzar creo un archivo que se llame conectar.php y que tenga el codigo de conectar a la base de datos, este codigo es uno muy sencillo ejemplo de ello:

Archivo: conectar.php
<?
mysql_connect("localhost", "usuario", "clave") OR DIE("No ha sido posible conectar a la tabla");
mysql_select_db("nombre base de datos");
?>

Pues bien lo que hago cuando voy a trabajar en otro archivo que haga una busqueda solo incluyo la pagina que tiene la conexion y ya! Ejemplo de ello:

NOTA: iba a ocupar tu codigo pero no lo entiendo mucho ocupas mucha codigo innesesario no digo que no sirva pero innesesario.

Archivo: buscar.php

<?
include("conectar.php");

//aqui codigo a buscar algo
$sql=mysql_query("SELECT * FROM tabla WHERE codiciones");

?>

Creo que lo unico que no hace que conectes estara en tu codigo algo esta mal, la verdad ni lo revise solo me dedique ha hacerte mencion como hago yo la conexion, la forma mas sencilla de hacerlo, bueno creo.

Espero haberte ayudado.

Complementar la respuestaComplementar la respuesta
Volver al árbol de categoríasVolver al árbol de categorías

Comentarios
Fueron enviados 2 comentarios a la faq
1 comentario no revisado
1 comentario revisado:
Por: Roberto Cortés
16/10/2008
A ver... cuando hacemos una web en Dreamweaver y la queremos subir al host que tenemos contratado (o gratuito) en internet... no sólo subimos los archivos php sino que debemos tener creada la base da datos en el servidor en el que alojamos la página. Dicho servidor, al crear la base de datos, te dará un nombre de base de datos, un host para la base de datos, un nombre de usuario y una contraseña.

Todos estos datos que tú ya tienes configurados en tu PC local y que no necesitas -necesariamente- modificar para nada... vienen escritos (dentro de cada proyecto o sitio de Dreamweaver) en una carpeta llamada Connections, en un archivo llamado "xxxxxxxx.php" (el nombre que tú le hayas puesto a tu conexión con la base de datos desde Dreamweaver). Si abres ese archivo encontrarás un código muy sencillo:

<?php
# FileName="Connection_php_mysql.htm"
# Type="MYSQL"
# HTTP="true"
$hostname_xxxxxx = "localhost";
$database_xxxxxx = "mibasededatos";
$username_xxxxxx = "root";
$password_xxxxxx = "";
$xxxxxx = mysql_pconnect($hostname_xxxxxx, $username_xxxxxx, $password_xxxxxx) or trigger_error(mysql_error(),E_USER_ERROR);
?>

Pues bien, AHORA VIENE LO INTERESANTE. Con los datos que te han dado en el servidor donde quieres alojar la web, sustituye estos datos en este archivo:
en vez de "localhost" escribe el host que te han dado.
en vez de "mibasededatos" escribe el nombre de la base de datos que has creado on-line.
en vez de "root" escribe tu nombre de usuario.
y en escribe también la contraseña... claro!!!

una vez modificados estos datos en tu copia local FTPéalo a tu servidor, el mismo en el que tienes tus archivos php y donde has configurado tu base de datos... y a funcionar.

RECUERDA DOS COSAS:
1.- La base de datos que tengas on-line debe ser igual que la que hay en tu PC... con las mismas tablas y todo (y los mismos datos si no quieres tener que volverlos a meter todos). Es muy útil la opción de phpMyAdmin de exportar tablas... y luego en el servidor donde lo cuelgas eliges "importar".

2.- Una vez que haya subido el archivo de conexión con los datos de configuración de la base de datos de tu servidor... vuelve a dejarlo con los datos de tu servidor local, es decir "localhost" "root" y el nombre de la base de datos que le hayas puesto en local... para que te siga funcionando en tu ordenador y para que Dreamweaver pueda seguir trabajando en local.


Espero haber sido de ayuda.
Un saludo.

Volver al árbol de categoríasVolver al árbol de categorías

Donaciones
Si piensas que te hemos ayudado y merecemos tu apoyo económico...