PHP y V7


([N1] vgegeo) #1

Buenas,
Trasteando con PHP, y partiendo de la base que estoy utilizando Apache+PHP+vModApache (todo en un mismo servidor), me encuentro con alguna duda:

-¿como conectais el contenido de un .PHP con la base de datos de Velneo?
Quiero decir:
-estableceis de alguna forma la conexion con V7 al igual que se hace con MySql
-tirais a base de INCLUDE (proceso en V7 que devuelve contenido) en los diferentes PHP que hayais creado
-alguna idea por donde comenzar con esto

Estas dudas me surgen porque me encuentro que con INCLUDE debo pasarle toda la URL http…, ya que no basta con el Virtual Host que hay configurado en el Apache, y de ahi, que no se por donde continuar para poder llegar a los procesos guardados en V7 salvo indicando la URL completa, y no se hasta que punto esto es conveniente o no, a pesar de que no se vea el contenido PHP.

Gracias,


([N4] arturomiranda) #2

Hola, @vgegeo

bueno realmente PHP no es el que interactua directamente con velneo, el que interactua directamente es Apache a traves de vModApache, ya que lo que realmente sirves son procesos de velneo (accesibles desde web), que devuelven, un html, o un JSON, un XML, o lo que requieras,

ejemplo:

http://xwscloud02.xelcron.com.mx/api/WEB_GET_EMP_USR.pro

observa la extensión (.pro) y dentro de nuestro proyecto a instanciar tenemos un proceso con el identificador WEB_GET_EMP_USR

estos otros ejemplos estan montados con cirrus.js + apache + php
http://facturaonline.xelcron.com.mx:5000/facplus/demo/search

http://workingcapital.xelcron.com.mx/index.php/panel/acceso/login

no olvides a los amigos de betrocket…

saludos y espero te sirva de orientacion


([N1] vgegeo) #3

Gracias @arturomiranda

Mi duda esta en como llamas al contenido que tenemos accesible desde web en V7, desde la pagina PHP.
Si, luego quien procesa y devuelve la peticion es el Apache, pero como lo llamas desde PHP.

Adjunto pantallazo de una pagina MUY BASICA en php, en la que he puesto 3 formas de cargar el contenido en un fichero .php para devolver HTML al usuario.

Mi duda es, si las llamadas a los procesos V7 se hacen asi, o el planteamiento a seguir es otro.

Entiendase, son mis primeras pinceladas en php, e igual el planteamiento es un absurdo y el camino a seguir es otro totalmente diferente.

Si, tengo en cuenta a los de BetRocket, que desde aqui aplaudo que hayan conseguido un portal asi gestionado de esa forma.



([N4] arturomiranda) #4

mira no lo he intentado con el comando include, pero si con CURL, que seria algo mas o menos asi:

<?php 
  
  $resource = curl_init('http://tuhostname/tupagina/tuprocesovelneo.pro');   //  <---- tu proceso web desde velneo
  
  curl_setopt($resource, CURLOPT_POST, 'application/json');   // <-- tus cabeceras
  curl_setopt($resource, CURLOPT_POSTFIELDS, array('parametro1' => 'valor1'));   // <--- tus parametros
  
  $response = curl_exec($resource);   // <-- capturas el resultado y ya lo puedes procesar (html, json)
  curl_close($resource);

?>


([N1] vgegeo) #5

Gracias Arturo,

Aun estoy comenzando con PHP…

Probare CURL y seguire valorando otras alternativas.

Aprovecho para dejar un link por si alguien más pasa por aqui:

curl - PHP Ejemplo

Gracias,


([N4] mperez) #6

Hola Gegeo

Te recomiendo la segunda parte de este video en el que ellos explican perfectamente lo que hacen y por cierto con éxito.

http://mpoliver.wordpress.com/2014/04/17/maximo-rendimiento-programando-en-php-y-velneo-el-futuro-de-php-para-gestion/

Realmente si usas php y velneo, la ventaja es que Velneo es quien te resuelve toda la lógica de tu Web.
En Php te limitas a cuestiones de puro interface.

Es decir utilizas Velneo a modo de WebServices pero para absolutamente toda tu Web.

En Velneo realmente lo que creas es un Api propia que dará respuesta a cada necesidad de tu php para montar la web.

Desde Php llamaras a esas funciones de tu api y lo normal es que Velneo te devuelva un Json, eso puede ser a traves de vModapache o bien tu propio protocolo Tcp (O Cirrus que te lo da hecho)

Te recomiendo este video en el que la gente de Betrocket te explica su filosofía, que no es suya por que la gente realmente experta en Web, sigue modelos muy similares

Nota : Sin embargo para que esto te sea óptimo, la clave esta en dominar la base de datos de Velneo, ser capaz de mover lógicas complejas solo con la Base de Datos y si no la has trabajado previamente y la dominas no es fácil, todo lleva un aprendizaje y Velneo no se parece precisamente a Sql


([N1] vgegeo) #7

Gracias Miguel.

Creo que con PHP no nos limitamos unicamente al puro interfaz.

Ya solo con sumar PHP a nuestro vModApache + vServer, podemos contar con gestion de cookies y sesiones, que por si solo, en vServer no se pueden gestionar, al menos no de una forma medianamente seria, creo yo.

Por eso, quiero dejar que PHP sea quien gestione la parte de seguridad que con vModApache no logro enfocar(al menos yo), y con ello, aprovecho a reducir la carga del vServer, ya que pasaria a solicitar/recibir unicamente JSON desde vServer.

Lo de montar una API, sera una segunda parte, pero para eso tengo que tener claro ciertos aspectos de PHP.

Gracias por tu aportacion


([N1] cristianvg2003) #8

Hola,

GeGeO estas en lo correcto lo ideal es crear UN API de accesso a los datos de tu vServer, en el caso de Cirrus.js como ese es el enfoque te permite de una forma muy simple generar API’s con arquitectura REST que es hoy por el estándar de facto en lo que se espera que sea una API.

Los desarrolladores de xelcron.net usan este enfoque con Php + Velneo y yo por mi parte lo he usado en RubyOnRails + Velneo con muy buenos resultados tanto en productividad en programación como performance en los responses.

Un saludo,


([N1] vgegeo) #9

@cristianvg2003 ,

Tomo nota, y aprovecho para felicitarte por el gran trabajo con Cirrus.js.

A pesar de que me parece un buen producto, me cuesta hacerme con el planteamiento que tiene, ya que el poco tiempo que dispongo, apenas saco para ver y entender su funcionamiento y apuesto más por este otro camino con PHP.


([N1] mariobarreiro) #10

Buenas:

Yo lo veo muy sencillo con file_get_contents. Llamarías a la url del servidor Apache+vModApache, que te devolvería, por ejemplo, una respuesta JSON. Ese JSON lo procesas desde Apache+PHP y listo.

Puedes empezar si quieres con todo en el mismo servidor. Obviamente si vas a tener mucha carga te intereserá separarlo.

Un saludo.
Mario.


([N1] vgegeo) #11

Gracias Mario,

De momento a efectos de pruebas, tengo todo montado en local, y no he realizado pruebas aun desde exterior.

Pero segun me voy documentando veo grandes diferencias de momento, ya que parece que file_get_contents es un tanto enrevesado montar peticiones POST, y en cambio, CURL permite una serie de parametros bien definidos para hacer este tipo de peticiones POST.

En cuanto a rendimiento, evidentemente aun no lo se, pero por lo que voy leyendo tiene bastante mejor rendimiento las peticiones CURL.

Sigo documentandome…

Agradezco cualquier comentario al respecto, ya que son mis inicios en PHP :wink:

Gracias, a todos