login  Naam:   Wachtwoord: 
Registreer je!
 Forum

function ereg() deprecated (Opgelost)

Offline Emonk - 05/02/2011 13:03
Avatar van EmonkLid Beste,

Wanneer ik een normaal werkend script uitvoer staat er bij mij bovenaan de pagina:
  1. ( ! ) Deprecated: Function ereg() is deprecated in C:\wamp\www\addresses\index.php on line 11
  2. Call Stack
  3. # Time Memory Function Location
  4. 1 0.0040 390792 {main}( ) ..\index.php:0


Ik gebruik Wampserver.

De code die hiervoor gebruikt wordt is:

  1. if (isset($_POST["add_button"])) {
  2. If (is_uploaded_file($_FILES['add_foto']['tmp_name'])) {
  3. If (!ereg("((.png|.PNG|.jpg|.JPG|.gif|.GIF)$)",$_FILES['add_foto']['name'],$extensie)) {
  4. echo 'Het bestand is niet van het juiste type (gif, jpg, png).';
  5. } elseif (!move_uploaded_file($_FILES['add_foto']['tmp_name'],$pad.$_POST['add_voornaam'].$_POST['add_achternaam'].$extensie[0])) {
  6. echo 'Het bestand kon niet worden verplaatst.';
  7. } else {
  8. echo 'Uw bestand staat nu op: fotos/'.$_POST['add_voornaam'].$_POST['add_achternaam'].$extensie[0].'.';
  9. }
  10. } else {
  11. echo 'Het bestand kon niet worden ge-upload.';
  12. }
  13. }


Het werkt prima maar geeft toch die foutmelding. Waarom en hoe krijg ik m weg?

13 antwoorden

Gesponsorde links
Offline Joost - 05/02/2011 13:10
Avatar van Joost PHP expert Deprecated betekent 'verouderd'. Je moet voor RegExes de functies zoals PHP.net: preg_match gebruiken ;)
Offline pijke - 05/02/2011 13:10 (laatste wijziging 05/02/2011 13:11)
Avatar van pijke Gouden medaille

Lid
de ereg library is verouderd.
daarom zegt hij dat.
je kunt beter preg gebruiken.
die is meestal sneller en ereg gaat uit PHP6 verdwijnen.

edit:
net te laat 
Offline NTS64 - 05/02/2011 13:10
Avatar van NTS64 PHP gevorderde Ik zou eerder overstappen naar PHP.net: preg_replace dan die notice te onderdrukken.

PHP.net schreef:
preg_match(), which uses a Perl-compatible regular expression syntax, is often a faster alternative to ereg().

Offline pijke - 05/02/2011 13:11
Avatar van pijke Gouden medaille

Lid
nu moet het wel duidelijk zijn 
Offline Emonk - 05/02/2011 15:11
Avatar van Emonk Lid ja, het is duidelijk
maar mijn engels is niet geweldig (A) dus hoe verander ik de code nou?
Offline pijke - 05/02/2011 15:31
Avatar van pijke Gouden medaille

Lid
wij spreken gewoon nederlands 
je kunt het beste ereg vervangwen door preg.
zoek op internet ff een tut op wat de syntax is van preg.
die is net iets anders.
succes ermee!
Offline Emonk - 05/02/2011 15:32
Avatar van Emonk Lid maar moet ik dan preg_match() of preg_replace() hebben?
Offline pijke - 05/02/2011 15:33
Avatar van pijke Gouden medaille

Lid
preg_match()
Offline Emonk - 05/02/2011 15:39
Avatar van Emonk Lid sorry, ik snap er helemaal niets van
ik snap ook al niets van ereg() 
kun je niet gewoon de code geven?
Offline pijke - 05/02/2011 15:46 (laatste wijziging 05/02/2011 15:46)
Avatar van pijke Gouden medaille

Lid
goed, maar weet dat je van zelf uitzoeken veel meer leert.
  1. if (isset($_POST["add_button"])) {
  2. If (is_uploaded_file($_FILES['add_foto']['tmp_name'])) {
  3. If (!preg_match("/((.png|.PNG|.jpg|.JPG|.gif|.GIF)$)/",$_FILES['add_foto']['name'],$extensie)) {
  4. echo 'Het bestand is niet van het juiste type (gif, jpg, png).';
  5. } elseif (!move_uploaded_file($_FILES['add_foto']['tmp_name'],$pad.$_POST['add_voornaam'].$_POST['add_achternaam'].$extensie[0])) {
  6. echo 'Het bestand kon niet worden verplaatst.';
  7. } else {
  8. echo 'Uw bestand staat nu op: fotos/'.$_POST['add_voornaam'].$_POST['add_achternaam'].$extensie[0].'.';
  9. }
  10. } else {
  11. echo 'Het bestand kon niet worden ge-upload.';
  12. }
  13. }

als het goed is zou dit moeten werken.
Bedankt door: Emonk
Offline Emonk - 05/02/2011 15:47
Avatar van Emonk Lid dank
dat weet ik, maar ik heb deadlines...
Offline avdg - 05/02/2011 15:47 (laatste wijziging 05/02/2011 15:48)
Avatar van avdg PHP gevorderde Je moet gewoon je expressie tussen 2 identieke tekens plaatsen (hier bv. de "/"):

/(.png|.PNG|.jpg|.JPG|.gif|.GIF)$/
Offline Emonk - 05/02/2011 15:48
Avatar van Emonk Lid dat snap ik nu ook 
Gesponsorde links
Je moet ingelogd zijn om een reactie te kunnen posten.
Actieve forumberichten
© 2002-2024 Sitemasters.be - Regels - Laadtijd: 0.229s