[PHP] Call-time pass-by-reference has been deprecated ?!?

Pagina: 1
Acties:

Onderwerpen


Acties:
  • 0 Henk 'm!

  • Pietert
  • Registratie: Januari 2001
  • Niet online

Pietert

There is no spoon

Topicstarter
ik krijg de volgende error als ik op mijn webserver een inlogprocedure wil gebruiken:

Warning: Call-time pass-by-reference has been deprecated - argument passed by value; If you would like to pass it by reference, modify the declaration of [runtime function name](). If you would like to enable call-time pass-by-reference, you can set allow_call_time_pass_reference to true in your INI file. However, future versions may not support this any longer. in c:\webserver\www\webedit\webedit.php on line 3715

die error slaat op de volgende regel met code:

$fileExists = @$ftpClass->DoesFileExist($CurrentDirectory, $str_file_name, &$Err);

Zover ik bij naspeuringen begrepen heb mag &$Err niet meer gebruikt worden (deprecated) en moet daarvoor iets veranderd worden. In de error wordt aangeraden om allow_call_time_pass_reference op True te zetten, deze staat echter al op On. En het lost het probleem dus niet op :(

Ook zoals ik op internet terugvond het simpelweg verwijderen van de & in &$Err brengt geen oplossing. De foutmelding is inderdaad verdwenen alleen inloggen gebeurt nog steeds niet :(

Ik probeer een kant-en-klaar script dat gekocht is te installeren dus in de code springen en allerlei dingen veranderen lijkt me geen sterk plan (ben een PHP n00b). Iemand die me een manier kan geven om door een PHP ini te veranderen of een andere versie te installeren deze bug te verhelpen?

[ Voor 8% gewijzigd door Pietert op 24-02-2004 23:19 ]

#huiskamer | Amsterdammert | Some days you're the pigeon, some days you're the statue | Zenbook S13 UM5302TA-LV067W | LG 40WP95CP-W | HP USB-C dock G5


Acties:
  • 0 Henk 'm!

  • PrisonerOfPain
  • Registratie: Januari 2003
  • Laatst online: 26-05 17:08
de & moet bij de functie declaratie zelf staan ipv in de aanroep

Acties:
  • 0 Henk 'm!

  • .oisyn
  • Registratie: September 2000
  • Laatst online: 00:27

.oisyn

Moderator Devschuur®

Demotivational Speaker

In de error wordt aangeraden om allow_call_time_pass_reference op True te zetten, deze staat echter al op On
True != On :?
Maar ik zal de makers van de software mailen, zeker als je het gekocht hebt. Het is hun taak om ervoor te zorgen dat het gewoon draait op php webservers, dus dat moeten ze maar oplossen ook (is er trouwens sowieso geen nieuwere versie downloadbaar?)

Give a man a game and he'll have fun for a day. Teach a man to make games and he'll never have fun again.


Acties:
  • 0 Henk 'm!

  • Pietert
  • Registratie: Januari 2001
  • Niet online

Pietert

There is no spoon

Topicstarter
Er is nog geen nieuwere versie beschikbaar, dat is inderdaad jammer.
Ik heb ze al gemaild maar wil liever even verder en dit spul werkende krijgen :)
Kzal je true =! On opmerking eens wat werk gaan geven ;)

True of On in de php.ini maken geen verschil, zal ik die php.ini moeten registreren of iets dergelijks? Momenteel start ik de webserver gewoon opnieuw op (Stop - Start) na het vervangen van de php.ini

De On setting geeft trouwens geen error melding, de True setting wel, deze is dus fout.

[ Voor 42% gewijzigd door Pietert op 24-02-2004 23:27 ]

#huiskamer | Amsterdammert | Some days you're the pigeon, some days you're the statue | Zenbook S13 UM5302TA-LV067W | LG 40WP95CP-W | HP USB-C dock G5


Acties:
  • 0 Henk 'm!

  • stekkel
  • Registratie: Augustus 2001
  • Laatst online: 17-09 08:05
Door het verplaatsen van de & naar de functie definitie los je dat op:

PHP:
1
2
3
4
5
6
7
8
9
10
11
12
class ftpClass {
    function DoesFileExist($Dir,$file,&$Err) {
        $Err = 1;
        return false;
    }
}
$ftpClass =& new ftpClass();
$Err = 0;
$CurrentDirectory = '/etc';
$str_file_name = 'passwd.not';
$fileExists = @$ftpClass->DoesFileExist($CurrentDirectory, $str_file_name, $Err);
echo $Err;


Let wel op dat je $Err wel eerst initialiseerd.

[ Voor 17% gewijzigd door stekkel op 24-02-2004 23:27 ]


Acties:
  • 0 Henk 'm!

  • .oisyn
  • Registratie: September 2000
  • Laatst online: 00:27

.oisyn

Moderator Devschuur®

Demotivational Speaker

stekkel ja maar hij wil zoals aangegeven liever niet de source veranderen :)

Give a man a game and he'll have fun for a day. Teach a man to make games and he'll never have fun again.


Acties:
  • 0 Henk 'm!

  • stekkel
  • Registratie: Augustus 2001
  • Laatst online: 17-09 08:05
.oisyn schreef op 24 februari 2004 @ 23:27:
stekkel ja maar hij wil zoals aangegeven liever niet de source veranderen :)
Tja, dan houdt het op en slik ik mijn commentaar weer in :)

En het was nog wel zo makkelijke oplossing ...

edit:

En ik zal voortaan beter lezen

[ Voor 8% gewijzigd door stekkel op 24-02-2004 23:30 ]


Acties:
  • 0 Henk 'm!

  • Pietert
  • Registratie: Januari 2001
  • Niet online

Pietert

There is no spoon

Topicstarter
de reden dat ik het liever niet zelf wijzig is dat het meer dan 6000 regels code is en ik daarin geen overzicht heb. Als ik dus je wijziging aanbreng loopt het elders weer fout denk ik...

#huiskamer | Amsterdammert | Some days you're the pigeon, some days you're the statue | Zenbook S13 UM5302TA-LV067W | LG 40WP95CP-W | HP USB-C dock G5

Pagina: 1