Problemas con DB remota - Forum

Forum Navigation
You need to log in to create posts and topics.

Problemas con DB remota

Hola Gente:

Bueno, al grano, tengo una app local funcionando de maravilla (Sql Lite), pero al trasladarla en remoto no funciona. He cambiado la ruta a la DB en el config.php y el directorio neofunctions.php con la acción:

neoPhpSetPath "http://midominio.com.ar/prueba/neofunctions.php"

Tengo activo PHP (tengo activa una instalación de WP en el mismo server).

Me muesta las tablas pero no hay datos, no se puede conectar.

Me faltan pasos?...donde pongo el famoso Access-Control-Allow-Origin?.

Saludos!

Hola @palamar,

Entiendo que tu aplicación se va a ejecutar desde fuera del servidor, si es así asegúrate de poner esta línea como la primera de config.php después del consabido <?php

header("Access-Control-Allow-Origin: *");

También es muy importante que en tu servidor esté activada la extensión PDO de SQLite para PHP.
Generalmente siempre hay una opción para configurar esto en el panel de administración de tu servidor (de lo contrario puedes hacerlo editando el archivo php.ini, mira más abajo).
Si tienes dudas de cual es la configuración de tu servidor, sube un archivo llamado configuracion.php con este contenido:

<?php
  phpinfo();
?>

Después ve a "tudominio.com/configuracion.php" y verás todos los detalles.
En la sección PDO deben aparecer sqlite y mysql
Puedes hacer lo mismo en el servidor local de neoPHP Server para ver como tendría que ser.

Si te fijas en el archivo php.ini de neoPHP Server aparecen estas líneas que se encargan de cargar ambas extensiones PDO:

; Enable sqlite extension module
extension=./php/ext/php_pdo_sqlite.dll
extension=./php/ext/php_sqlite.dll

; Enable mysql extension module
extension=./php/ext/php_pdo_mysql.dll
extension=./php/ext/php_mysql.dll

Hola!:

Pues he tirado de la info y me he fijado en el php.ini del server y esta aparentemente todo activo:

PDO drivers	mysql, sqlite

Tambien puse la linea en el php. Sigue funcionando en local pero no en el dominio. Aclaro, yo calculé que el php.ini dentro de la app debía borrarlo ya que corresponde al del Localhost. La única linea que no encuentro exacta es esta:

extension=./php/ext/php_sqlite.dll

en su defecto encuentro (y activa):

extension=./php/ext/php_sqlite3.dll

Hay que modificar algo en el config?, algo en la app?. No sé.

Gracias!

Mi app esta metida completamente en el server remoto. Copie el directorio exacto de la app en local. Cuando lo ejecuto va de 10 en cuestión de funcionamiento gráfico y de botones, pero la DB sigue sin funcionar.

Hola de nuevo @palamar,

Si tu app está completamente instalada en el server remoto NO debes incluir el header.
Tampoco debes incluir esta acción:

neoPhpSetPath "http://midominio.com.ar/prueba/neofunctions.php"

Ambos están pensados para apps compiladas con PhoneGap, en tu caso no son necesarias.
¿Puedes enviarme por email un enlace al archivo configuracion.php que describo más arriba para que vea que está todo correcto? (Por razones de seguridad, no lo compartas aquí).

Hola, tengo exactamente el mismo problema.

Puede ser que tenga algo que ver la versión del PHP instalada en el sevidor y la de la base de datos?

@metamedia, es muy dificil saber exáctamente que sucede sin conocer las características del servidor.
En principio el plugin neoPHP está diseñado para PHP 7.0 o superior.
Versiones más antiguas de PHP no se recomiendan en producción porque ya no tienen mantenimiento y pueden dar lugar a problemas de seguridad.

Estas pruebas las estoy haciendo con el ejemplo que pusiste " neophp-mysql.neoapp" en un alojamiento que tengo en Arsys.
Para ver las características del php que está ejecutándose:

************************************

Y la base también está ahí.
Si lo pruebo con mi base en local con PHPserver funciona perfectamente, pero probando en el servidor (en remoto) y desde un tablet en Android compilado con PhoneGap no funciona.

Al cargar la base no sucede nada:

http://www.superarte.eu/app

Gracias!!!

@metamedia, prueba primero tu aplicación sin compilarla para PhoneGap, sino para HTML.
Para PhoneGap debes configurar la cabecera del archivo config.php con esta línea de código:

header("Access-Control-Allow-Origin: *");

Además en tu aplicación deberás indicar la ubicación del archivo neofunctions.php utilizando el comando neoPhpSetPath.
Por eso lo mejor es comprobar que funciona como aplicación web HTML primero en el servidor.
La configuración de tu servidor es extremadamente antigua e insegura (PHP 5.3) por lo que muy probablemente vayas a tener problemas. Por cierto que yo en tu lugar borraría el enlace a phpinfo!!

Enlace a phpinfo eliminado. Realmente no era consciente del peligro que esto conlleva.

He probado con la versión PHP 7.2 y funciona perfectamente.
Tanto en versión web HTML como en un tablet Android compilada con PhoneGrab.

Aquí accede a mi base de datos en el mismo servidor:
http://www.superarte.eu:8008/visualmeta

Y aquí accede a tu base de datos en tu servidor:
http://www.superarte.eu:8008/visualneo

Gracias por tu ayuda y enhorabuena por el programa.

luishp has reacted to this post.
luishp