Foros del Web » Programando para Internet » PHP »

TEngo problemas para conectar a BD MySQL

Estas en el tema de TEngo problemas para conectar a BD MySQL en el foro de PHP en Foros del Web. hola, soy nuevo con esto, y estoy metido en la vacaloca... estoy desarrollando una aplicacion relativamaente sencilla con la cual debo alimentar una BD de ...
  #1 (permalink)  
Antiguo 26/04/2006, 15:44
 
Fecha de Ingreso: abril-2006
Mensajes: 21
Antigüedad: 18 años
Puntos: 0
TEngo problemas para conectar a BD MySQL

hola,
soy nuevo con esto, y estoy metido en la vacaloca... estoy desarrollando una aplicacion relativamaente sencilla con la cual debo alimentar una BD de 7 campos 3 requeridos nombre apellido y correo-e, segundo apellido, direccion, telefono y fecha de nacimiento son los otros campos.
para esto hice un formulario html, el cual esta validado los campos requeridos por un javascript. y se conecta a la bd mediante php.

el problema es que no he podido con una funcion para realizar la conexion pues si la dejo directa realiza la conexion, pero si empleo la funcion me saca error

el siguente es el php function con el que estoy haciendo esto.

por favor en que puedo estar fallando el error esta marcado


<?php
//conectando con la BD

function conectarbd($servidor, $bd, $usuario, $pwd)
{
$link = mysql_connect($servidor, $usuario, $pwd)
or die ("No se pudo conectar a la base de datos, inténtelo luego.");
mysql_select_db($bd, $link)
or die ("No se pudo conectar a la base de datos, inténtelo luego.");
}

//listar registros

conectarbd ("localhost", "eventos", "root", "");

//enviando los parametros de conexion la bd (servidor, BD, usuario, pwd)

$sql="SELECT * FROM clientes";
$result=mysql_query($sql,$link); //***linea que da error***
if ($row= mysql_fetch_array($result)) //***linea que da error***
{
echo "<TABLE BORDER=´1´>";
echo "<TR><TD>Nº.</TD><TD>Nombre</TD><TD>1er. Apellido</TD><TD>2º. Apellido</TD><TD>Correo-E</TD><TD>Dirección</TD><TD>Teléfono</TD><TD>Nacido el</TD></TR>";
DO
{
echo "<TR><TD>".$row["cl_id"]."</TD><TD>".$row["cl_nmb"]."</TD><TD>".$row["cl_ap1"]."</TD><TD>".$row["cl_ap2"]."</TD><TD>".$row["cl_mail"]."</TD><TD>".$row["cl_dir"]."</TD><TD>".$row["cl_tel"]."</TD><TD>".$row["cl_fec_nac"]."</TD></TR>";
}
WHILE ($row=mysql_fetch_array($result));
echo "</TABLE>";
}
?>



en cambio si empleo



<?php
//conectando con la BD

$conexio = mysql_connect("localhost","root","");
mysql_select_db ("eventos", $conexio) OR die ("No se puede conectar");


//listar registros


$sql="SELECT * FROM clientes";
$result=mysql_query($sql,$conexio);

if ($row= mysql_fetch_array($result))
{
echo "<TABLE BORDER=´1´>";
..... todo lo demas igual que el anterior....
}
?>

este funciona sin ningun problema...

el inconveniente de este es que no puedo colocar asi las funciones en una misma pàgina...

que debo hacer

gracias....
  #2 (permalink)  
Antiguo 26/04/2006, 15:58
Avatar de jmn2k1  
Fecha de Ingreso: noviembre-2001
Ubicación: Buenos Aires...
Mensajes: 489
Antigüedad: 22 años, 5 meses
Puntos: 2
Te falta hacer un "return $link;" en la funcion para devolver el identificador, esa variable no esta disponible fuera de la funcion. Y luego, claro, asignar el link con la funcion $link = conectardb(....

Tambien esta la opcion de usar las funciones sin el parametro link, que se supone asume la ultima coneccion establecida.

Saludos
__________________
JmN
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 03:33.