Encore d'autres
authorMoussa NOMBRÉ <mnombre@u-nm.b.ca.auf>
Fri, 29 Jun 2012 16:50:05 +0000 (12:50 -0400)
committerMoussa NOMBRÉ <mnombre@u-nm.b.ca.auf>
Fri, 29 Jun 2012 16:50:05 +0000 (12:50 -0400)
I'm not a php expert, but a bit of googling told me that preg() doesn't exist. I tried preg_match() instead and it works ! --- http://www.joomfish.net/forum/viewtopic.php?f=47&t=8256
http://php.net/manual/fr/function.preg-match.php
http://ca.php.net/manual/fr/function.ereg.php

Le 2012-06-29 12:03, Marc Nachin a écrit :
> Merci Moussa pour ton aide,
>
> Malheuresement Lodel n'a pas de mise à jour pour php5. Cet outil est vraiment très peu utilisé, peu suivi et donc peu efficient.
> J'ai refais un commit en remplacant la fonction ereg par preg, mais ecran blanc, J'ai peut être fait une fausse manip.
>
> Après ci cela ne marche toujours pas, je ne saurai conseillé à Victorine de se tourner vers des vrais experts de lodel, car mes compétence et mon temps sont insuffisant.
> Cordialement.
>
> Marc.
>
> Le 12-06-29 16:51, Moussa NOMBRÉ a écrit :
>> Le 2012-06-29 10:28, Marc Nachin a écrit :
>>> Moussa,
>>>
>>> J'ai remis mon dépôt à neuf. et commiter pour cette erreur
>>>
>>> PHP Error (Warning) in file '/srv/www/bulletin.auf.org/lodel-0.9/scripts/nusoap.php' on line 270 :
>>> get_class() expects parameter 1 to be object, string given
>>>
>>> les modifs suivantes:
>>>
>>> -          (get_class($val) == 'servooattachment') ) {
>>> +          (gettype($val) == 'object' && get_class($val) == 'servooattachment') ) {
>>>
>>> et j'ai une erreur quand je veux puller sur le serveur:
>>> error: Your local changes to 'lodel-0.9/scripts/nusoap.php' would be overwritten by merge.  Aborting.
>>> Please, commit your changes or stash them before you can merge.
>> Voici ce qu'il faut faire dans ce cas :
>> git checkout HEAD lodel-0.9/scripts/nusoap.php
>>
>> Ensuite, tu refais ton pull :
>> git-web:~/bulletin.auf.org$ git pull
>> Updating 8481fff..a05bc79
>> Fast-forward
>>  lodel-0.9/scripts/nusoap.php |    2 +-
>>  1 files changed, 1 insertions(+), 1 deletions(-)
>> git-web:~/bulletin.auf.org$
>>
>> Ne reste plus qu'à tester ;-)
>>
>>> De plus je ne suis vraiment pas sur de cette modification, mes connaissances techniques ne me permettent pas de savoir fixer correctement ces erreurs relatives au passage à php5.3
>> Il faudrait voir si lodel n'offre pas un outil de migration vers le php5.3 ; normalement ça devrait être le cas.
>> De mon côté, suis tout comme toi, très très limité, pour ne pas dire nul, en php.
>>
>> NM
>>
>>
>>
>>> Merci par avance pour votre aide.
>>>
>>>
>>> Le 12-06-29 14:18, Moussa NOMBRÉ a écrit :
>>>> Salut Marc,
>>>>
>>>> Le 2012-06-29 07:57, Marc Nachin a écrit :
>>>>> Salut Moussa,
>>>>>
>>>>> Bon Victorine a trouvé encore une erreur que je n'avais pas vu hier, qui doit découler de php5:
>>>>>
>>>>> PHP Error (Warning) in file '/srv/www/bulletin.auf.org/lodel-0.9/scripts/nusoap.php' on line 270 :
>>>>> get_class() expects parameter 1 to be object, string given
>>>> Heuuuu .... as-tu trouvé comment corriger ?
>>>> as-tu remis à neuf ta copie local du dépôt ?
>>>> Si oui, il te suffit d'apporter le correctif localement, de push-er puis pull-er côté serveur.
>>>>
>>>> Courage mon cher.
>>>>
>>>> NM
>>>>
>>>>
>>>>>
>>>>> Merci.
>>>>> Marc.
>>>>> --
>>>>>
>>>>> Marc NACHIN
>>>>> Chef de projet Web
>>>>> Agence universitaire de la Francophonie
>>>>> Tél : 33 (1) 44 41 42 98
>>>>> marc.nachin@auf.org
>>>>> auf.org - Actualités
>>>
>>>
>>> --
>>>
>>> Marc NACHIN
>>> Chef de projet Web
>>> Agence universitaire de la Francophonie
>>> Tél : 33 (1) 44 41 42 98
>>> marc.nachin@auf.org
>>> auf.org - Actualités
>>
>>
>
>
> --
>
> Marc NACHIN
> Chef de projet Web
> Agence universitaire de la Francophonie
> Tél : 33 (1) 44 41 42 98
> marc.nachin@auf.org
> auf.org - Actualités

lodel-0.9/scripts/nusoap.php

index 21e097d..4649138 100644 (file)
@@ -369,7 +369,7 @@ class nusoap_base {
        case (is_array($val) || $type):
          // detect if struct or array
          $valueType = $this->isArraySimpleOrStruct($val);
-         if($valueType=='arraySimple' || preg('^ArrayOf',$type)){
+         if($valueType=='arraySimple' || preg_match('^ArrayOf',$type)){
            $i = 0;
            if(is_array($val) && count($val)> 0){
              foreach($val as $v){
@@ -539,7 +539,7 @@ class nusoap_base {
        */
        function expandQname($qname){
                // get element prefix
-               if(strpos($qname,':') && !preg('^http://',$qname)){
+               if(strpos($qname,':') && !preg_match('^http://',$qname)){
                        // get unqualified name
                        $name = substr(strstr($qname,':'),1);
                        // get ns prefix
@@ -671,7 +671,7 @@ function timestamp_to_iso8601($timestamp,$utc=true){
                '([0-9]{2})(\.[0-9]*)?'. // seconds ss.ss...
                '(Z|[+\-][0-9]{2}:?[0-9]{2})?'; // Z to indicate UTC, -/+HH:MM:SS.SS... for local tz's
 
-               if(preg($pregStr,$datestr,$regs)){
+               if(preg_match($pregStr,$datestr,$regs)){
                        return sprintf('%04d-%02d-%02dT%02d:%02d:%02dZ',$regs[1],$regs[2],$regs[3],$regs[4],$regs[5],$regs[6]);
                }
                return false;
@@ -696,7 +696,7 @@ function iso8601_to_timestamp($datestr){
        '([0-9]{2}):'.  // minutes mm:
        '([0-9]{2})(\.[0-9]+)?'. // seconds ss.ss...
        '(Z|[+\-][0-9]{2}:?[0-9]{2})?'; // Z to indicate UTC, -/+HH:MM:SS.SS... for local tz's
-       if(preg($pregStr,$datestr,$regs)){
+       if(preg_match($pregStr,$datestr,$regs)){
                // not utc
                if($regs[8] != 'Z'){
                        $op = substr($regs[8],0,1);
@@ -975,7 +975,7 @@ class XMLSchema extends nusoap_base  {
         if(count($attrs) > 0){
                foreach($attrs as $k => $v){
                 // if ns declarations, add to class level array of valid namespaces
-                               if(preg("^xmlns",$k)){
+                               if(preg_match("^xmlns",$k)){
                        //$this->xdebug("$k: $v");
                        //$this->xdebug('ns_prefix: '.$this->getPrefix($k));
                        if($ns_prefix = substr(strrchr($k,':'),1)){
@@ -1073,7 +1073,7 @@ class XMLSchema extends nusoap_base  {
                                        $this->currentComplexType = $attrs['name'];
                                        $this->complexTypes[$this->currentComplexType] = $attrs;
                                        $this->complexTypes[$this->currentComplexType]['typeClass'] = 'complexType';
-                                       if(isset($attrs['base']) && preg(':Array$',$attrs['base'])){
+                                       if(isset($attrs['base']) && preg_match(':Array$',$attrs['base'])){
                                                $this->complexTypes[$this->currentComplexType]['phpType'] = 'array';
                                        } else {
                                                $this->complexTypes[$this->currentComplexType]['phpType'] = 'struct';
@@ -1084,7 +1084,7 @@ class XMLSchema extends nusoap_base  {
                                        $this->currentElement = false;
                                        $this->complexTypes[$this->currentComplexType] = $attrs;
                                        $this->complexTypes[$this->currentComplexType]['typeClass'] = 'complexType';
-                                       if(isset($attrs['base']) && preg(':Array$',$attrs['base'])){
+                                       if(isset($attrs['base']) && preg_match(':Array$',$attrs['base'])){
                                                $this->complexTypes[$this->currentComplexType]['phpType'] = 'array';
                                        } else {
                                                $this->complexTypes[$this->currentComplexType]['phpType'] = 'struct';
@@ -1660,7 +1660,7 @@ class soap_transport_http extends nusoap_base {
        */
        function soap_transport_http($url){
                $this->setURL($url);
-               preg('\$Revisio' . 'n: ([^ ]+)', $this->revision, $rev);
+               preg_match('\$Revisio' . 'n: ([^ ]+)', $this->revision, $rev);
                $this->outgoing_headers['User-Agent'] = $this->title.'/'.$this->version.' ('.$rev[1].')';
        }
 
@@ -2149,7 +2149,7 @@ class soap_transport_http extends nusoap_base {
                                }
                        }
                        // remove 100 header
-                       if(isset($lb) && preg('^HTTP/1.1 100',$data)){
+                       if(isset($lb) && preg_match('^HTTP/1.1 100',$data)){
                                unset($lb);
                                $data = '';
                        }//
@@ -2291,7 +2291,7 @@ class soap_transport_http extends nusoap_base {
                curl_close($this->ch);
                
                // remove 100 header
-               if (preg('^HTTP/1.1 100',$data)) {
+               if (preg_match('^HTTP/1.1 100',$data)) {
                        if ($pos = strpos($data,"\r\n\r\n")) {
                                $data = ltrim(substr($data,$pos));
                        } elseif($pos = strpos($data,"\n\n") ) {
@@ -2566,7 +2566,7 @@ class soap_server extends nusoap_base {
                        $qs = $QUERY_STRING;
                }
 
-               if(isset($qs) && preg('wsdl', $qs) ){
+               if(isset($qs) && preg_match('wsdl', $qs) ){
                        // This is a request for WSDL
                        if($this->externalWSDLURL){
               if (strpos($this->externalWSDLURL,"://")!==false) { // assume URL
@@ -3005,7 +3005,7 @@ class soap_server extends nusoap_base {
                $payload .= $this->getDebugAsXMLComment();
         }
                $this->outgoing_headers[] = "Server: $this->title Server v$this->version";
-               preg('\$Revisio' . 'n: ([^ ]+)', $this->revision, $rev);
+               preg_match('\$Revisio' . 'n: ([^ ]+)', $this->revision, $rev);
                $this->outgoing_headers[] = "X-SOAP-Server: $this->title/$this->version (".$rev[1].")";
                // Let the Web server decide about this
                //$this->outgoing_headers[] = "Connection: Close\r\n";
@@ -3487,7 +3487,7 @@ class wsdl extends nusoap_base {
             $this->currentSchema->schemaStartElement($parser, $name, $attrs);
             $this->appendDebug($this->currentSchema->getDebug());
             $this->currentSchema->clearDebug();
-        } elseif (preg('schema$', $name)) {
+        } elseif (preg_match('schema$', $name)) {
                $this->debug('Parsing WSDL schema');
             // $this->debug("startElement for $name ($attrs[name]). status = $this->status (".$this->getLocalPart($name).")");
             $this->status = 'schema';
@@ -3503,7 +3503,7 @@ class wsdl extends nusoap_base {
             $this->depth_array[$depth] = $pos;
             $this->message[$pos] = array('cdata' => ''); 
             // get element prefix
-            if (preg(':', $name)) {
+            if (preg_match(':', $name)) {
                 // get ns prefix
                 $prefix = substr($name, 0, strpos($name, ':')); 
                 // get ns
@@ -3515,7 +3515,7 @@ class wsdl extends nusoap_base {
             if (count($attrs) > 0) {
                 foreach($attrs as $k => $v) {
                     // if ns declarations, add to class level array of valid namespaces
-                    if (preg("^xmlns", $k)) {
+                    if (preg_match("^xmlns", $k)) {
                         if ($ns_prefix = substr(strrchr($k, ':'), 1)) {
                             $this->namespaces[$ns_prefix] = $v;
                         } else {
@@ -3692,7 +3692,7 @@ class wsdl extends nusoap_base {
        */
        function end_element($parser, $name){ 
                // unset schema status
-               if (/*preg('types$', $name) ||*/ preg('schema$', $name)) {
+               if (/*preg_match('types$', $name) ||*/ preg('schema$', $name)) {
                        $this->status = "";
                        $this->schemas[$this->currentSchema->schemaTargetNamespace][] = $this->currentSchema;
                $this->debug('Parsing WSDL schema done');
@@ -4857,7 +4857,7 @@ class soap_parser extends nusoap_base {
                        $key_localpart = $this->getLocalPart($key);
                        // if ns declarations, add to class level array of valid namespaces
             if($key_prefix == 'xmlns'){
-                               if(preg('^http://www.w3.org/[0-9]{4}/XMLSchema$',$value)){
+                               if(preg_match('^http://www.w3.org/[0-9]{4}/XMLSchema$',$value)){
                                        $this->XMLSchemaVersion = $value;
                                        $this->namespaces['xsd'] = $this->XMLSchemaVersion;
                                        $this->namespaces['xsi'] = $this->XMLSchemaVersion.'-instance';
@@ -4890,7 +4890,7 @@ class soap_parser extends nusoap_base {
                                [6]    nextDimension    ::=    Digit+ ','
                                */
                                $expr = '([A-Za-z0-9_]+):([A-Za-z]+[A-Za-z0-9_]+)\[([0-9]+),?([0-9]*)\]';
-                               if(preg($expr,$value,$regs)){
+                               if(preg_match($expr,$value,$regs)){
                                        $this->message[$pos]['typePrefix'] = $regs[1];
                                        $this->message[$pos]['arrayTypePrefix'] = $regs[1];
                        if (isset($this->namespaces[$regs[1]])) {
@@ -5523,7 +5523,7 @@ class mysoapclient extends nusoap_base  {
                // detect transport
                switch(true){
                        // http(s)
-                       case preg('^http',$this->endpoint):
+                       case preg_match('^http',$this->endpoint):
                                $this->debug('transporting via HTTP');
                                if($this->persistentConnection == true && is_object($this->persistentConnection)){
                                        $http =& $this->persistentConnection;
@@ -5545,10 +5545,10 @@ class mysoapclient extends nusoap_base  {
                                        $http->setEncoding($this->http_encoding);
                                }
                                $this->debug('sending message, length: '.strlen($msg));
-                               if(preg('^http:',$this->endpoint)){
+                               if(preg_match('^http:',$this->endpoint)){
                                //if(strpos($this->endpoint,'http:')){
                                        $this->responseData = $http->send($msg,$timeout,$response_timeout);
-                               } elseif(preg('^https',$this->endpoint)){
+                               } elseif(preg_match('^https',$this->endpoint)){
                                //} elseif(strpos($this->endpoint,'https:')){
                                        //if(phpversion() == '4.3.0-dev'){
                                                //$response = $http->send($msg,$timeout,$response_timeout);