Plug

3 views
Skip to first unread message

Dubraska Malavé

unread,
Feb 9, 2009, 8:25:07 PM2/9/09
to administr...@googlegroups.com
Buenas noches, franllys recuerda enviarnos la informacion.
Gracias les aviso si nos funciona.

--
Atte.
Dubraska Malavé.

Franllys B

unread,
Feb 9, 2009, 8:28:12 PM2/9/09
to administracion-III
Buenas Noches a todos

Les envió la información encontrada en internet sobre PHP + 4D todo
esto sale del foro de la pagina que dio el profesor (4dhispano)

*******Información 1 ****** ( http://forums.4d.fr/Post/SP/674897/1/674898
)
Pregunta:
Estimados:

Recurro a uds. para preguntarles si alguno sabe como conectar PHP con
una base de datos en 4D. Agradeceria mucho si alguien tuviera un
codigo por ahi o alguna sugerencia util de como puedo hacerlo.

De antemano muchas gracias.

Saludos.

Respuesta:
Mira si te sirve este plug_in de terceros (Visto en 4DToday):

http://www.algonet.se/~blomster/com4d.html

Suerte

*******Información 2 ******

Es un ejemplo llamado “Ejemplo de cómo acceder a servicios WEB de 4D
desde PHP”

http://forums.4d.fr/Post/SP/142509/1/149513

Este ejemplo está enfocado a Mac, debe existir su equivalente para WXP

Franllys B

unread,
Feb 9, 2009, 9:06:09 PM2/9/09
to administracion-III
Aqui les coloco el contenido del ejemplo del que les hablaba

http://forums.4d.fr/Post/SP/142509/1/149513

Ejemplo de como acceder a servicios WEB de 4D desde PHP

Como acceder a servicios Web desde PHP sobre Mac OS 10.3 :

Este ejemplo va orientado a como publicar un servicio web de 4D e
invocarlo desde PHP.

El siguiente codigo es codigo PHP de alli que se encuetre entre los
tags
que definen codigo PHP

<?php

// Instrucciones:
//
// 1. Descargar la ultima version de PHP y ponerla operativa bajo mac
OSX
// para mas informacion de como instalar PHP en Mac OS X se debe ir a
// la página web www.php.org
//
// 2. Configurar y arrancar el servidor Web de 4D en el puerto 8081
// (o en el que se quiera)
//
// 3. Configure el servidor 4D (preferencias->Web->Web Services) para
// que acepte solicitudes de servicios Web, asigne un nombre al
// servicio Web (en nuestro ejemplo usamos
// 'LMLA_WebService' como nombre del servicio Web), Asigne un
// NameSpace (en el ejemplo usamos
// 'www.lablasamericas.com.co/namespace/default')
//
// 4. Descargar la ultima version de NuSOAP, descomprimirla e
instalarla
// en la carpeta 'DocumentRoot' generalmente es
// "/Library/WebServer/Documents"
// aunque puede cambiarla editando el archivo '/etc/httpd/httpd.conf'.
// Puede descargar el NuSOAP desde
// http://dietrich.ganx4.com/download.php?url=/nusoap/
//
// 5. Cree un método en 4D y publiquelo como servicio web
// (propiedades del metodo->publicar como servicio Web
// El siguiente metodo (abajo) fue publicado como servicio Web y es el
// que se invoca en este
// ejemplo: (obviamente deben estar creada la tabla 'consecutivos')
//
// Listo!!
// Ejecute el script index.php usando el servidor web
// (apache en nuestro ejemplo, preinstalado en mac os x)
// lanzando IE o SAFARI, introduzca la URL 'http://localhost/
index.php'

/*************************************************

[code]
`
------------------------------------------------------------------------------
`
` Metodo: wNumeroOrden
`
` Descripcion: Permite buscar el siguiente consecutivo de una tabla
dado su
` Codigo
`
` Parametros: $1: Codigo del consecutivo
`
`
------------------------------------------------------------------------------
` Historia de Modificaciones:
`
` Fecha y Autor: Jaime Alvarez, Marzo 11 del 2004
`
------------------------------------------------------------------------------


C_STRING(20;$1) ` Codigo del consecutivo a buscar
C_LONGINT($0) ` Siguiente consecutivo


QUERY([Consecutivos];[Consecutivos]Id=$1)

If (Records in selection([Consecutivos])>0)
$0:=[Consecutivos]linData
Else
$0:=-1
End if

` .... resto del metodo

[/code]

****************************************************/

//
// Ahora cree el siguiente archivo con las instrucciones php listadas
a
// continuacion y guardela en la carpeta 'DocumentRoot' definida en la
// configuracion de APACHE con el nombre de index.php
//

// incluir las clases SOAP

require_once('nusoap.php');

// Definir un arreglo de parametros. En este ejemplo buscaremos el
// siguiente consecutivo para 'factura'.

$param = array('FourD_arg1'=>'factura');

// Definir el path del servidor Web, en este ejemplo la IP donde se
ejecuta
// 4D Server es 131.1.18.17 y se activo el puerto 8081 con el servidor
// web.

$serverpath ='http://131.1.18.17:8081/4DSOAP';

//define method namespace

$namespace="http://www.lablasamericas.com.co/namespace/default";

// Crear un nuevo cliente SOAP

$client = new soapclient($serverpath);


// Incocar el metodo 4D

$nextConse = $client->call('wNroOrden',$param,$namespace);

// Si ocurre un error informarlo en el explorador

if (isset($fault)) {
print "Error: ". $fault;
}
else if ($nextConse == -1) {
print "El consecutivo no existe en la DB.";
} else {
// De otra manera muestre el resultado
print "El siguiente consecutivo es: ". $nextConse;
}
// Destruir el objeto creado

unset($client);

//
// Si desea, desde 4D ejecute el Web Services Wizard con el siguiente
URL
// http://131.1.18.17:8081/4DWSDL
//
// lo anterior de dara los servicios WEB publicados, podra ver la
// documentacion del metodo y cambiar los nombres de los parametros.
//

?>ZERO
Reply all
Reply to author
Forward
0 new messages