Foros del Web » Programando para Internet » PHP »

Problemas de conexion de php 5 a mysql 5

Estas en el tema de Problemas de conexion de php 5 a mysql 5 en el foro de PHP en Foros del Web. Hola a todos, estoy trabajndo en un servidor que tiene mysql 5 y php 5, creo que funciona correctamente ya que es un servidor de ...
  #1 (permalink)  
Antiguo 16/05/2007, 14:12
 
Fecha de Ingreso: mayo-2007
Mensajes: 17
Antigüedad: 12 años, 6 meses
Puntos: 0
Problemas de conexion de php 5 a mysql 5

Hola a todos,

estoy trabajndo en un servidor que tiene mysql 5 y php 5, creo que funciona correctamente ya que es un servidor de producción, ya alli hay bases de datos de sistemas, aplicaciones web y todos lo demas. Pero estoy haciendo una nueva aplicacion con una nueva base de datos y resulta que el código no me toma la conexion, les pongo el ejemplo de mi codigo

<?php
$link = mysql_pconnect("localhost", "web", "2#%[email protected]#[email protected]");


mysql_select_db("almacen", $link);

$result = mysql_query("SELECT * FROM usuario where NB_LOGIN = '".$login."'", $link);
if (mysql_fetch_row($result)>0) {
//if (isset($name)) {
$user = mysql_result($result, 0, "CD_USUARIO");
$pass = mysql_result($result, 0, "TX_PASSWORD");
}
}

?>

como ven realiza la clasica conexion, ese usuario y contraseña ya existen, pero la conexion no creo que este haciendo la conexion porque no me trae ningun valor y esa tabla tiene datos. Incluso lo hago con php 4 y mysql 4 en otro servidor y funciona perfecto

Habrá otra manera de conectarse con php 5 y mysql 5??

Lo extraño es que el phpmyadmin, el php y el mysql estan instalados y sirven perfectamente
gracias
  #2 (permalink)  
Antiguo 16/05/2007, 14:16
 
Fecha de Ingreso: marzo-2007
Mensajes: 347
Antigüedad: 12 años, 8 meses
Puntos: 2
Re: Problemas de conexion de php 5 a mysql 5

Quiza tiene desabilitada la conexion persistente, enmede mysql_pconnect, pon mysql_connect

Un saludo
  #3 (permalink)  
Antiguo 16/05/2007, 14:25
 
Fecha de Ingreso: mayo-2007
Mensajes: 17
Antigüedad: 12 años, 6 meses
Puntos: 0
Re: Problemas de conexion de php 5 a mysql 5

Amigo coloco igual mysql_connect y nada que ver.. sigue el mismo problema
  #4 (permalink)  
Antiguo 16/05/2007, 14:36
 
Fecha de Ingreso: marzo-2007
Mensajes: 347
Antigüedad: 12 años, 8 meses
Puntos: 2
Re: Problemas de conexion de php 5 a mysql 5

Prueba a hacer un echo mysql_error haver que te dice.

Un saludo
  #5 (permalink)  
Antiguo 16/05/2007, 14:47
 
Fecha de Ingreso: mayo-2007
Mensajes: 17
Antigüedad: 12 años, 6 meses
Puntos: 0
Re: Problemas de conexion de php 5 a mysql 5

no me dice nada, y tengo activado la opcion de mostrar errores en el archivo php.ini
  #6 (permalink)  
Antiguo 16/05/2007, 14:49
 
Fecha de Ingreso: marzo-2007
Mensajes: 347
Antigüedad: 12 años, 8 meses
Puntos: 2
Re: Problemas de conexion de php 5 a mysql 5

Pues entonces, lo unico que se me ocurre es que la base de datos este mal configurada, o no exista, no se me ocurre otra solucion, por que si probando en otros servers funciona...., esa estructura no cambia de php4 a php5, ni de mysql4 a mysql5, ni nada por el estilo, asi que hay algun problema interno con la base de datos.

Un saludo
  #7 (permalink)  
Antiguo 17/05/2007, 08:26
 
Fecha de Ingreso: mayo-2007
Mensajes: 17
Antigüedad: 12 años, 6 meses
Puntos: 0
Re: Problemas de conexion de php 5 a mysql 5

Bueno amigos como les comente antes, ese es un servidor de produccion alli se encuentra ya un sitema operando, la unica diferencia es que alli trabajn la conexion con una clae, es decir, con rogramacion php orientada a objetos, y yo solo la se hacer estructurada, como les mostre en el ejemplo de la cita
  #8 (permalink)  
Antiguo 17/05/2007, 09:18
 
Fecha de Ingreso: marzo-2007
Mensajes: 347
Antigüedad: 12 años, 8 meses
Puntos: 2
Re: Problemas de conexion de php 5 a mysql 5

Pues si muestras la clase que utilizan quiza te podamos ayudar.

Un saludo
  #9 (permalink)  
Antiguo 17/05/2007, 12:27
 
Fecha de Ingreso: mayo-2007
Mensajes: 17
Antigüedad: 12 años, 6 meses
Puntos: 0
Re: Problemas de conexion de php 5 a mysql 5

Gracias amigo, la clase que sirve perfectamente para hacer la conexion es la siguinete, no entiendo mucho porque no se trabajar php orientado objetos, pero aqui le spongo el codigo

en un archivo tienen las constantes:

//Acceso a la base de datos
define( "DBHOST", "localhost" ); // Host
define( "DBUSER", "web" ); // Usuario de la base de datos del sistema
define( "DBPASS", "2#%[email protected]#[email protected]" ); // Contraseña del usuario de la bd
define( "DBNAME", "scontrol" ); // Nombre de la base de datos

luego en otro archivo, llaman por un include al archivo de constantes y despues tiene el codigo de la conexion:

class CAccesoBD {

public function __construct( $dbhost, $dbuser, $dbpass, $dbname ) {
$this->m_dbHost = $dbhost;
$this->m_dbUser = $dbuser;
$this->m_dbPass = $dbpass;
$this->m_dbName = $dbname;

$this->m_dbConexion =
new mysqli( $dbhost, $dbuser, $dbpass, $dbname, false );

if( $this->m_dbConexion === false )
return false;
else {
$this->m_dbConexion->autocommit( FALSE );
return true;
}
}

/**
* Cerrar la conexion con la base de datos (MySQL).
*
* Esta función verifica que la conexión se haya establecido con exito.
* Si tuvo exito se hace un último commit() para guardar cualquier
* operaciones pendientes antes de terminar la conexion
*/
public function __destruct() {
if( $this->m_dbConexion !== false) {
$this->m_dbConexion->commit();
$this->m_dbConexion->close();
}
}

esto funciona perfectamente pero no se como colocar lago de esto en mi aplicacion...
  #10 (permalink)  
Antiguo 17/05/2007, 13:07
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 13 años, 6 meses
Puntos: 2135
Re: Problemas de conexion de php 5 a mysql 5

Creo voy a preguntar algo obvio, pero, que error es el que te da?
  #11 (permalink)  
Antiguo 17/05/2007, 13:10
 
Fecha de Ingreso: mayo-2007
Mensajes: 17
Antigüedad: 12 años, 6 meses
Puntos: 0
Re: Problemas de conexion de php 5 a mysql 5

Amigo no me arroja ningun error, simplemente no realiza la conexion ya que ejecuto cualquier sentencia sql hacia una tabla de la base de datos y no hace nada,dedusco eso, y eso que tengo activado la opcion de errores en el php.ini
  #12 (permalink)  
Antiguo 17/05/2007, 13:44
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 13 años, 6 meses
Puntos: 2135
Re: Problemas de conexion de php 5 a mysql 5

Prueba el siguiente codigo:
Código PHP:
<?php
phpinfo
();
?>
Checa si esta habilitado el mysql, si si es asi prueba el siguiente codigo:
Código PHP:
<?php
$host 
"localhost";
$usuario ""// Llena los datos
$password ""
$db "";
$table "";

header"Content-type: text/plain" );
$link mysql_connect$host$user$password ) or die( mysql_error() );
echo 
"Conexion Establecida\n";
mysql_select_db$db$link ) or die( mysql_error() );
echo 
"Base de datos seleccionada\n";
$query "SELECT * FROM `$tabla`";
echo 
"Probando enviar un query: $query\n";
$result mysql_query$query$link ) or die( mysql_error() );
echo 
"Imprimiendo resultados\n";
while( 
$row mysql_fetch_array$row ) ) {
      
print_r$row );
}
echo 
"Limpiando resultado\n";
mysql_free_result$result );
echo 
"Cerrando conexion\n";
mysql_close$link );

echo 
"Todas las pruebas correctas";
?>
  #13 (permalink)  
Antiguo 17/05/2007, 14:08
 
Fecha de Ingreso: mayo-2007
Mensajes: 17
Antigüedad: 12 años, 6 meses
Puntos: 0
Re: Problemas de conexion de php 5 a mysql 5

El primer codigo de phpinfo funciona perfecto, me muestra la informacion de php, pero el siguiente codigo de conexion no me muestra nada , me aparece la pantalla en blanco, ahora me surge una duda sera que me falta por habilitar una opcion de mostrar errores en el archivo php.ini, para ver que es lo que esta pasando...

sigo sin solucionar mi problema...
  #14 (permalink)  
Antiguo 17/05/2007, 15:19
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 13 años, 6 meses
Puntos: 2135
Re: Problemas de conexion de php 5 a mysql 5

Corriendo el primer script, ves la seccion de mysql?
  #15 (permalink)  
Antiguo 18/05/2007, 06:42
 
Fecha de Ingreso: mayo-2007
Mensajes: 17
Antigüedad: 12 años, 6 meses
Puntos: 0
Re: Problemas de conexion de php 5 a mysql 5

Si corriendo el primer script el de phpinfo, esta bien, no hay problemas, donde no veo y no me aparece nada es en el segundo script
  #16 (permalink)  
Antiguo 18/05/2007, 09:09
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 13 años, 6 meses
Puntos: 2135
Re: Problemas de conexion de php 5 a mysql 5

No haz contestado mi pregunta, en el primer script, cuando lo ejecutas te arroja mucha informacion en pantalla. En la seccion de mysql, que informacion te da?
  #17 (permalink)  
Antiguo 18/05/2007, 09:22
 
Fecha de Ingreso: mayo-2007
Mensajes: 17
Antigüedad: 12 años, 6 meses
Puntos: 0
Re: Problemas de conexion de php 5 a mysql 5

amigo esto es lo que me arroja la seccion de mysql


MySQL Support enabled

Active Persistent Links 0
Active Links 0
Client API version 3.23.57

Directive Local Value Master Value
mysql.allow_persistent On On
mysql.connect_timeout 60 60
mysql.default_host no value no value
mysql.default_password no value no value
mysql.default_port no value no value
mysql.default_socket no value no value
mysql.default_user no value no value
mysql.max_links Unlimited Unlimited
mysql.max_persistent Unlimited Unlimited
mysql.trace_mode Off Off
  #18 (permalink)  
Antiguo 18/05/2007, 09:25
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 13 años, 6 meses
Puntos: 2135
Re: Problemas de conexion de php 5 a mysql 5

Prueba el script que puse de mysql y pon hasta arriba lo siguiente:
Código PHP:
error_reportingE_ALL ); 
Ve si te genera un error en pantalla.
  #19 (permalink)  
Antiguo 18/05/2007, 09:32
 
Fecha de Ingreso: mayo-2007
Mensajes: 17
Antigüedad: 12 años, 6 meses
Puntos: 0
Re: Problemas de conexion de php 5 a mysql 5

no no me genera ningun error sale la pantalla en blanco
  #20 (permalink)  
Antiguo 18/05/2007, 09:36
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 13 años, 6 meses
Puntos: 2135
Re: Problemas de conexion de php 5 a mysql 5

Hay un archivo dentro del directorio de logs de Apache, se debe de llamar error.log, abrelo y ve si ahi esta marcado el error de PHP.
  #21 (permalink)  
Antiguo 18/05/2007, 10:24
 
Fecha de Ingreso: mayo-2007
Mensajes: 8
Antigüedad: 12 años, 6 meses
Puntos: 0
De acuerdo Re: Problemas de conexion de php 5 a mysql 5

Hola GatorV, el script que pusiste funciona de maravilla, yo lo probe, pues tengo un problema similar. Hace la conexión a la base de datos, cuando se dispone a imprimir los resultados, aparece un warning que genera el mysql_error().
El warning es el siguiente:
mysql_fetch_array(): supplied argument is not a valid MySQL result resource in <b>C:\DocumentRoot\conexionDB5.php

Este error persiste y he tratado de resolverlo usando otros script de ejemplo que he encontrado, pero este error sigue apareciendo, incluso con el buen funcionamiento de la conexión a la base de datos.

No se que hacer, tienes alguna idea para poder ver si soluciono mi problema
De ante mano Gracias
  #22 (permalink)  
Antiguo 18/05/2007, 14:12
 
Fecha de Ingreso: mayo-2007
Mensajes: 17
Antigüedad: 12 años, 6 meses
Puntos: 0
Re: Problemas de conexion de php 5 a mysql 5

Una pregunta,soy nuevo programando en php, pero sera que la sintaxis de php 5 cuando se realizan instrucciones de select, update es distinta a php 4, porque si es que sirve la conexión entonces, por ejemplo en mi caso es que pudiera existir porblemas con las sintaxis de select, por ejemplo, porque en php 4 me funciona sin problemas, de verdad...
  #23 (permalink)  
Antiguo 18/05/2007, 15:26
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 13 años, 6 meses
Puntos: 2135
Re: Problemas de conexion de php 5 a mysql 5

No es diferente, deben de funcionar tus scripts tal cual, por eso te comentaba que vieras el error log porque a veces esas pantallas en blanco es que no va a reportar el error pero si lo va a almacenar en el log.
  #24 (permalink)  
Antiguo 21/05/2007, 09:39
 
Fecha de Ingreso: mayo-2007
Mensajes: 8
Antigüedad: 12 años, 6 meses
Puntos: 0
Re: Problemas de conexion de php 5 a mysql 5

Hey el script ya me funciona perfectamente, ya elimine todos los errores y ahora ya me muestra los datos que tengo en mi base de datos.
Pero ahora tengo otro problema, lo que quiero hacer con los datos que recupero de la base de datos es hacer una grafica utilizando las librerias del JpGraph, pero cuando trato de generar la gráfica, el JpGraph me envia un error:

Illegal pie plot. Sum of all data is zero for Pie Plot

Por lo que verás, el error dice que no puede plotear la gráfica de tarta, porque la sumatoria de todos los datos es cero, pero me he asegurado que en mi base de datos, tales datos que voy a graficar no se an cero, en otras palabras, sí existen datos, creo que tal vez el error esté en el arreglo que he definido para los datos que quiero graficar, te adjunto el script para que lo analizes y me digas en que tengo errores:


<?php

//voy a ver si puedo generar una grafica con estos datos..
include_once ("C:/wamp/jpgraph-1.21b/src/jpgraph.php");
include_once ("C:/wamp/jpgraph-1.21b/src/jpgraph_bar.php");
include ("C:/wamp/jpgraph-1.21b/src/jpgraph_line.php");
include_once ("C:/wamp/jpgraph-1.21b/src/jpgraph_pie.php");
include_once ("C:/wamp/jpgraph-1.21b/src/jpgraph_pie3d.php");

$host = "localhost";
$usuario = "root"; // Llena los datos
$password = "";
$db = "partidos";
$table = "votos";

header( "Content-type: text/plain" );
$link = mysql_connect( $host, $usuario, $password ) or die( mysql_error() );
//echo "Conexion Establecida\n";
mysql_select_db( $db, $link ) or die( mysql_error() );
//echo "Base de datos seleccionada\n";
$query = "SELECT * FROM `$table` WHERE `votos`";
//echo "Probando enviar un query: $query\n";
$result = mysql_query( $query, $link ) or die( mysql_error() );
//echo "Imprimiendo resultados\n";
while( $row = mysql_fetch_array( $result ) ) {
//print_r( $row );
$data[] = $result[0];
}




//esto yo lo estoy agregando...

//$data = array(40,21,17,27,23);

// Create the Pie Graph.
$datay = $data;
$graph = new PieGraph(400,200,'auto');
$graph->SetShadow();

// Set A title for the plot
$graph->title->Set("Votaciones");
$graph->title->SetFont(FF_FONT1,FS_BOLD);

// Create
$p1 = new PiePlot3D($datay);
$p1->SetLegends(array("Jan (%d)","Feb","Mar","Apr","May","Jun","Jul"));
$targ=array("conexionDB5.php?v=1","conexionDB5.php ?v=2","conexionDB5.php?v=3",
"conexionDB5.php?v=4","conexionDB5.php?v=5","conex ionDB5.php?v=6");
$alts=array("val=%d","val=%d","val=%d","val=%d","v al=%d","val=%d");
$p1->SetCSIMTargets($targ,$alts);

// Use absolute labels
$p1->SetLabelType(1);
$p1->value->SetFormat("%d kr");

// Move the pie slightly to the left
$p1->SetCenter(0.4,0.5);

$graph->Add($p1);


// Send back the HTML page which will call this script again
// to retrieve the image.
$graph->StrokeCSIM('conexionDB5.php');

//finaliza lo que agrege
mysql_close( $link );

//echo "Todas las pruebas correctas";
?>
  #25 (permalink)  
Antiguo 21/05/2007, 09:49
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 13 años, 6 meses
Puntos: 2135
Re: Problemas de conexion de php 5 a mysql 5

Cerropayne23

Te recomiendo habras un tema aparte para que la gente lea tu problema.
  #26 (permalink)  
Antiguo 21/05/2007, 11:18
 
Fecha de Ingreso: mayo-2007
Mensajes: 8
Antigüedad: 12 años, 6 meses
Puntos: 0
Re: Problemas de conexion de php 5 a mysql 5

Hey GatorV:

Hola:

El problema está en que no se como iniciar un tema nuevo en este foro, y como el tema de ustedes fue el primer problema que tuve (problemas con conexiones de php a mysql), luego de haber resuelto este problema viendo y estudiando tu script (que por cierto tenia como dos errores, pero de todas formas me ayudó bastante) pensé que el tema podía evolucionar y solucionar lo que sigue después de haber conseguido la conexión, porque dime tu...
el problema real no radica en solo conectarse a una base de datos, sino el poder utilizar los datos de forma efectiva. Eso es lo que quiero hacer ahora que ya solucioné el problema de conectarme a la base de datos, poder graficar los datos recuperados.
Gracias por tu script, tomaré en cuenta tu recomendación. De ante mano muchas gracias por tu colaboración y tu recomendación.
  #27 (permalink)  
Antiguo 23/05/2007, 14:14
 
Fecha de Ingreso: julio-2006
Mensajes: 2
Antigüedad: 13 años, 4 meses
Puntos: 0
Re: Problemas de conexion de php 5 a mysql 5

Hola yo tenia el mismo problema, me salia el error al cambiar de mysql 4 al 5 :

Warning: mysql_connect() [function.mysql-connect]: Client does not support authentication protocol requested by server; consider upgrading MySQL client in ...

lo corregi haciendo la siguiente consulta:

set password for 'usuario'@'%' = old_password('usuario')

hay que hacer un cambio en la forma en la que se almacena la contraseña del usuario

Espero que le sea de ayuda a alguien.
  #28 (permalink)  
Antiguo 24/05/2007, 09:24
 
Fecha de Ingreso: mayo-2007
Mensajes: 17
Antigüedad: 12 años, 6 meses
Puntos: 0
Re: Problemas de conexion de php 5 a mysql 5

amigo sera que es asi el codigo, segun lo que comentas para la conexion:

<?php

$host = "localhost";
$usuario = "web";
set $password for '2#%[email protected]#[email protected]'@'%' = old_$password('2#%[email protected]#[email protected]');
$db = "scontrol";


$link = mysql_connect($host,$usuario,$password);

mysql_select_db( $db, $link );

?>


lo hice asi pero aun no funciona estoy haciendo algo mal....
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:29.