Foros del Web » Programando para Internet » PHP »

porblemas con la BD mySQL

Estas en el tema de porblemas con la BD mySQL en el foro de PHP en Foros del Web. hola, tengo un sencillo programa q hace las veces de un foro. total, que me funciona perfectamente en local y a la hora de subirlo ...
  #1 (permalink)  
Antiguo 08/02/2006, 08:01
Avatar de humanista  
Fecha de Ingreso: abril-2005
Mensajes: 878
Antigüedad: 19 años
Puntos: 15
porblemas con la BD mySQL

hola, tengo un sencillo programa q hace las veces de un foro.

total, que me funciona perfectamente en local y a la hora de subirlo al servidor no me va. el problema (estoy prácticamente seguro de ello) es q no se conecta bien a la BD.

es decir va todo bien hasta ahí.

la BD la he creado creo q bien el servidor y el usuario (all privilegies) también. los he asociado.

creo q el fallo puede estar en la configuración del config.php o config.inc.php.

creo, según he estado mirando por ahí, q hay q hacer algo en estos ficheros, no? (poner usuario y contraseña y el nombre de la BD, no?.

pero en el servidor no están, o yo no los encuentro.

alguien me ayuda?.

espero q sean concretos, es decir no me vale links en plan mírate esto o lo otro, pq ya lo he hecho, o "mete php en el google", por favor sean concretos, please...

Última edición por humanista; 13/02/2006 a las 10:43
  #2 (permalink)  
Antiguo 08/02/2006, 08:47
Avatar de claudiovega  
Fecha de Ingreso: octubre-2003
Ubicación: Puerto Montt
Mensajes: 3.667
Antigüedad: 20 años, 6 meses
Puntos: 11
Lo más fácil para saber si es la BD o no es ir al código en que se realiza la conexión y agregar código para ver el posible error, ejemplo:

$link=mysql_connect("servidor","usuario","password ");

A eso, lo cambias por:

$link=mysql_connect("servidor","usuario","password ") or die(mysql_error());

para que te muestre el error de conexión. Si no hay error, no es un problema de conexión a mysql.
  #3 (permalink)  
Antiguo 13/02/2006, 10:22
Avatar de humanista  
Fecha de Ingreso: abril-2005
Mensajes: 878
Antigüedad: 19 años
Puntos: 15
no me va no me va

yo me conecto así:


<?php

function conec_usuarios()
{
if
(!($link=mysql_connect("localhost","usuario","pass ")))
{
exit();
}
if (!mysql_select_db("usuarios",$link))
{
exit();
}
return $link;
}

?>



y aunque añada lo de "or die.....":


<?php

function conec_usuarios()
{
if
(!($link=mysql_connect("localhost","usuario","pass ")) or die(mysql_error())
{
exit();
}
if (!mysql_select_db("usuarios",$link))
{
exit();
}
return $link;
}

?>

me sigue dando error...

Parse error: syntax error, unexpected '{' in /home/web/public_html/php/conec-usuarios.php on line 8

insisto en que en local me va de cine...

Última edición por humanista; 13/02/2006 a las 10:28
  #4 (permalink)  
Antiguo 13/02/2006, 10:26
Avatar de mauled  
Fecha de Ingreso: marzo-2005
Ubicación: Cd. de México.
Mensajes: 3.001
Antigüedad: 19 años, 1 mes
Puntos: 33
De acuerdo

Te faltaba un parentesis en el if...


Código PHP:
<?
function conec_usuarios()
{
    if(!(
$link=mysql_connect("localhost","usuario","pass ")) or die(mysql_error()))
    {
        exit();
    }
    if (!
mysql_select_db("usuarios",$link))
    {
        exit();
    }
    return 
$link;
}
?>
  #5 (permalink)  
Antiguo 13/02/2006, 10:39
Avatar de humanista  
Fecha de Ingreso: abril-2005
Mensajes: 878
Antigüedad: 19 años
Puntos: 15
me falla y me sale esto...

ok gracias, lo anterior me funciona y el error q me sale es:

Warning: main(conec-usuarios.php): failed to open stream: No such file or directory in /home/web/public_html/php/autentificarse.php on line 20

Warning: main(conec-usuarios.php): failed to open stream: No such file or directory in /home/web/public_html/php/autentificarse.php on line 20

Warning: main(): Failed opening 'conec-usuarios.php' for inclusion (include_path='.:/usr/lib/php:/usr/local/lib/php') in /home/web/public_html/php/autentificarse.php on line 20

Fatal error: Call to undefined function: conec_usuarios() in /home/web/public_html/php/autentificarse.php on line 21

Última edición por humanista; 22/02/2006 a las 07:49
  #6 (permalink)  
Antiguo 13/02/2006, 11:46
Avatar de humanista  
Fecha de Ingreso: abril-2005
Mensajes: 878
Antigüedad: 19 años
Puntos: 15
alguien sabe algo de este error?, plissss.....
  #7 (permalink)  
Antiguo 13/02/2006, 12:12
Avatar de claudiovega  
Fecha de Ingreso: octubre-2003
Ubicación: Puerto Montt
Mensajes: 3.667
Antigüedad: 20 años, 6 meses
Puntos: 11
Dice que no puede encontrar un archivo que le dices que "incluya", este: conec-usuarios.php, revisa que el archivo esté en donde tu crees.
  #8 (permalink)  
Antiguo 18/02/2006, 14:49
Avatar de humanista  
Fecha de Ingreso: abril-2005
Mensajes: 878
Antigüedad: 19 años
Puntos: 15
sigo sin acertar...

... en la solución:

INSISTO en que en local me funciona perfectamente, pero es q tengo todos los archivos en el mismo directorio. es imposible q sea por eso.

os pego primero el archivo noticias.php en el que nos muestra el textarea para autentificarnos.

despues el autentificarse.php que valida los datos

y por último el q se conecta a la BD q se llama conec-usuarios.php

ahí van:

noticias.php

<html>
<head>
<meta http-equiv="content-type" content="text/html;charset=iso-8859-1">
<meta name="generator" content="Adobe GoLive 5">
<title>Bienvenidol Panel de Control</title>
<link rel="stylesheet" href="comun/estilos.css">
</head>


<body>

<font size="1" face="Verdana">Bienvenido al Panel de Control</font>

<br>
<br>


<font size="1" face="Verdana">A continucación rellena los campos "<b>usuario</b>" y "<b>contraseña</b>" que posees únicamente tú.</font>


<FORM METHOD=post ACTION="autentificarse.php">
<TABLE>
<TR>
<TD><font size="1" face="Verdana">usuario &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><INPUT TYPE="text" class="ver10neg" NAME="usuario" SIZE="20" MAXLENGTH="30"><br>


<font size="1" face="Verdana">contraseña </font><font size="1" face="Verdana"><INPUT TYPE="password" class="ver10neg" NAME="contrasena" SIZE="20" MAXLENGTH="30"></font></TD>
</TR>
</TABLE>

<br>

<INPUT TYPE="submit" class="ver10neg" NAME="accion" VALUE="Entrar">
</FORM>

<br>

</body>
</html>

___________________

autentificarse.php

<html>
<head>
<meta http-equiv="content-type" content="text/html;charset=iso-8859-1">
<meta name="generator" content="Adobe GoLive 5">
<title>Bienvenido al Panel de Control</title>
<link rel="stylesheet" href="comun/estilos.css">
</head>

<body>

<?php

$usuario = $_POST["usuario"];
$contrasena = $_POST["contrasena"];


include("conec-usuarios.php");
$link=conec_usuarios();


$result=mysql_query("select * from usuarios where usuario='$usuario' and contrasena='$contrasena'",$link);

if($row = mysql_fetch_array($result))
{
echo "<br><font size=1 face=Verdana>hola&nbsp;<b>$row[usuario]</b>!, a continuación te presento las noticias que has introducido hasta ahora:</font>";


mysql_free_result($result);

echo "<br><br>";

include("conec-contenidos.php");
$link=conec_contenidos();
$result=mysql_query("select * from contenidos where usuario='$usuario' order by id desc",$link);

echo "<table>";
echo "<tr>";
echo "<td width=100 align=center><font size=1 face=Verdana><b>Nº noticia</b></font></td>";
echo "<td><font size=1 face=verdana><b>Título</b></font></td>";
echo "<td colspan=2 align=center><font size=1 face=verdana><b>Acción</b></font></td>";
echo "</tr>";

echo "<br><br>";

echo "<tr>";
echo "<td>&nbsp;</td>";
echo "</tr>";

while($row = mysql_fetch_array($result))
{

echo "<tr>";
echo "<td valign=top align=center>";
echo "<font size=1 face=Verdana>$row[id]</font>";
echo "</td>";
echo "<td valign=top>";
echo "<font size=1 face=Verdana>$row[titulo]&nbsp;</font>";
echo "</td>";
echo "<td>";
echo "<FORM METHOD=post ACTION=modificar.php>";
echo " <INPUT TYPE=hidden NAME=id value=$row[id]>";
echo " <INPUT TYPE=hidden NAME=usuario value=$usuario>";
echo " <INPUT TYPE=hidden NAME=contrasena value=$contrasena>";
echo " <INPUT TYPE=submit class=ver10neg value='Modificar noticia'>";
echo "</FORM>";
echo "</td>";
echo "<td>";
echo "<FORM METHOD=post ACTION=borrar.php>";
echo " <INPUT TYPE=hidden NAME=id value=$row[id]>";
echo " <INPUT TYPE=hidden NAME=usuario value=$usuario>";
echo " <INPUT TYPE=hidden NAME=contrasena value=$contrasena>";
echo " <INPUT TYPE=submit class=ver10neg value='Borrar noticia'>";
echo "</FORM>";
echo "</td>";
echo "</tr>";

}
echo "</table>";

echo "<FORM METHOD=post ACTION=introducir.php>";
echo " <INPUT TYPE=hidden NAME=usuario value=$usuario>";
echo " <INPUT TYPE=hidden NAME=contrasena value=$contrasena>";
echo " <INPUT TYPE=submit class=ver10neg value='Nueva noticia'>";
echo "</FORM>";

mysql_free_result($result);

}

else
{
echo "<font size=1 face=Verdana>Error al autentificarse</font>";
}

?>

</body>
</html>

______________________

conec-usuarios.php

<?php

function conec_usuarios()
{
if
(!($link=mysql_connect("localhost","usuariodb","co ntrasenabd")))
{
exit();
}
if (!mysql_select_db("usuarios",$link))
{
exit();
}
return $link;
}


?>


_________________

QUÉ HAGO MAL??????

Última edición por humanista; 18/02/2006 a las 14:57
  #9 (permalink)  
Antiguo 20/02/2006, 03:06
Avatar de humanista  
Fecha de Ingreso: abril-2005
Mensajes: 878
Antigüedad: 19 años
Puntos: 15
alguien me puede ayudar???, por favor...

me imagino q no será tan difícil, no? ;-D

muchas gracias...

Última edición por humanista; 20/02/2006 a las 04:31
  #10 (permalink)  
Antiguo 22/02/2006, 02:05
Avatar de humanista  
Fecha de Ingreso: abril-2005
Mensajes: 878
Antigüedad: 19 años
Puntos: 15
sos

socorrooooo... q alguien me ayude
  #11 (permalink)  
Antiguo 22/02/2006, 06:29
Avatar de claudiovega  
Fecha de Ingreso: octubre-2003
Ubicación: Puerto Montt
Mensajes: 3.667
Antigüedad: 20 años, 6 meses
Puntos: 11
Si tienes acceso, revisa el archivo php.ini, al parecer hay una ruta de inclusión dada por defecto allí, podría estar afectando la "inclusión". Busca algo como esto en dicho archivo: include_path='.:/usr/lib/php:/usr/local/lib/php'
  #12 (permalink)  
Antiguo 22/02/2006, 07:49
Avatar de humanista  
Fecha de Ingreso: abril-2005
Mensajes: 878
Antigüedad: 19 años
Puntos: 15
dónde se encuentra?

vale pero, dentro del servidor... dónde se encuentra el php.ini???
  #13 (permalink)  
Antiguo 22/02/2006, 07:56
Avatar de claudiovega  
Fecha de Ingreso: octubre-2003
Ubicación: Puerto Montt
Mensajes: 3.667
Antigüedad: 20 años, 6 meses
Puntos: 11
Crea un script php con este codigo:

Código PHP:
<?php
  phpinfo
();
?>
Ejecutas el script en el navegador y buscas la linea: Configuration File (php.ini) Path, ahi te indica su ubicación.
  #14 (permalink)  
Antiguo 24/02/2006, 12:52
Avatar de humanista  
Fecha de Ingreso: abril-2005
Mensajes: 878
Antigüedad: 19 años
Puntos: 15
a ver...

efectivamente me sale esto:

include_path .:/usr/lib/php:/usr/local/lib/php


lo saco de www.minervahosting.com/phpinfo.php

pero al php.ini no tengo acceso (al menos no lo encuentro)

me dicen por ahí q es del include que puede q no dé bien el path, pero... cómo puedo concretamente solucionarlo???

gracias

  #15 (permalink)  
Antiguo 24/02/2006, 12:59
 
Fecha de Ingreso: febrero-2006
Ubicación: Cienfuegos, Cuba
Mensajes: 14
Antigüedad: 18 años, 2 meses
Puntos: 0
que programas tienes instalados para trabajar...................
  #16 (permalink)  
Antiguo 28/02/2006, 10:38
Avatar de humanista  
Fecha de Ingreso: abril-2005
Mensajes: 878
Antigüedad: 19 años
Puntos: 15
Pregunta ????

a q te refieres?, yo trabajo con el bloc de notas...

  #17 (permalink)  
Antiguo 28/02/2006, 10:51
Avatar de claudiovega  
Fecha de Ingreso: octubre-2003
Ubicación: Puerto Montt
Mensajes: 3.667
Antigüedad: 20 años, 6 meses
Puntos: 11
Tal vez puedas realizar los include modificando esa directiva en cada script, llamado a la funcion ini_set(), asi:

ini_set("include_path","");

Dejandola vacía, no afectará a tu scripts.
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 16:36.