Quiero migrar una aplicación existente realizada con base de datos postgres y C
a una aplicación Web. Para ello estoy analizando Kumbia. Lo he instalado y esto y haciendo las primeras pruebas y no me estoy pudiendo conectar a la base de datos.
El error es el siguiente:
KumbiaDBException: No se puede conectar a PostgreSQL, verifique q el servicio este arriba y los parámetros de conexión sean correctos
Error Code: 0
En el archivo /srv/www/htdocs/demo/forms/db/adapters/postgresql.php en la línea: 99
En el archivo forms/config/config.ini, puse:
[development]
database.host = localhost
database.username = ayuale
database.password =
database.name = eternum
database.type = postgresql
database.port = 5430
El puerto no es el por defecto de postgres, pero por cuestiones internas debo cambiarlo.
En el archivo forms/dbadapters/postgresql.php, encontre esto en la linea 95:
if($this->Id_Connection =
@pg_connect("host={$this->dbHost} port=5432 user={$this->dbUser} password={$thi....
y lo cambie por esto,
if($this->Id_Connection =
@pg_connect("host={$this->dbHost} port={$this->dbPort} user={$this->dbUser} password={$thi....
Es correcto ?
Con el dbVisualizer, me conecto sin problemas a la base.
Estoy trabajando con Suse Linux 10.3
Comentarios
Gracias.
Por lo tanto seguí probando, con la linea, y el problema esta en que el argumento dbname, debe estar después del argumento host (o por lo menos antes del user)
Parece increíble, pero cambie la linea y me funciono.
Yo estoy usando postgres 7.4 y tal vez ese sea el problema y en las versiones superiores este corregido.
La linea de conexión me quedo asi:
if($this->Id_Connection = @pg_connect("host={$this->dbHost} dbname={$this->dbName} port={$this->dbPort} password={$this->dbPass} ")){
Ahora anda, y ya tengo mi primer ABM automático funcionando <!-- s:D --><img src="{SMILIES_PATH}/icon_biggrin.gif" alt=":D" title="Very Happy" /><!-- s:D -->
Saludos y exitos!
Lo que hice es muy simple y no tengo problemas en compartirlo, solo que no se si va a ser de mucha ayuda, ya que son pocas lineas de código. Lo demás lo hizo kumbia solo.
Primero:
Conectar la base de datos, para eso modifique el archivo:
config/environment.ini
Tuve que modificar la linea 199 de library/kumbia/db/adapters/pgsql.php
y quedo asi:
En la linea 105 del mismo archivo, hay una asiganción al puerto 5432, y la elimine.
La linea quedo asi:
Despues, creer un controlador en:
apps/default/controllers, llamado choferes_controller.php
Y cree un model el app/default/models, llamado choferes.php
Como ves es muy simple
Espero les sirva
Saludos