Avatar billede steenolsen1 Nybegynder
28. oktober 2005 - 18:12 Der er 10 kommentarer

undefined constant

Hej,

jeg har netop geninstalleret seneste version af Mysql, phpmyadmin og PHP 4.4.0, og alle mine phpscripts funker ikke længere...

Jeg får en fejl for hver eneste variabel... Så i et forum, at det måske kunne løses med register_globals = on, men det ser det ikke ud til...

Fejlene ser således ud:
Notice: Undefined index: b2b in D:\Hjemmesider\shop\index.php on line 41

Notice: Use of undefined constant lang - assumed 'lang' in D:\Hjemmesider\shop\index.php on line 75

Notice: Use of undefined constant sprog - assumed 'sprog' in D:\Hjemmesider\shop\index.php on line 80
Avatar billede erikjacobsen Ekspert
28. oktober 2005 - 18:14 #1
Du skal ikke skrive fx:

  $_POST[sprog]

men

  $_POST['sprog']
Avatar billede nizo Nybegynder
28. oktober 2005 - 19:20 #2
erikjacobsen: $_POST[sprog] virker fint for mig med mit PHP 5 lokalt, jeg behøver ikke parenteser
Avatar billede erikjacobsen Ekspert
28. oktober 2005 - 19:24 #3
Derfor er det da forkert alligevel. Og jeg har iøvrigt ikke skrevet nogen parenteser.
Avatar billede xyborx Nybegynder
29. oktober 2005 - 13:51 #4
nizo: Prøv at sætte error_reporting(E_ALL); og sig det igen... :)
Avatar billede steenolsen1 Nybegynder
30. oktober 2005 - 10:08 #5
Sorry at jeg ikke har svaret tilbage, men jeg har af en eller anden grund ikke modtaget mails, når der er lagt indlæg...

Jeg har lige testet det, og kan se, at det ER pga syntaxen, og fordi jeg har udeladt ' erne... Det vil jeg rette mig ind efter i fremtiden, men er der en "indstillingsmulighed" et eller andet sted, så jeg kan bruge de sider jeg allerede HAR lavet?
Avatar billede erikjacobsen Ekspert
30. oktober 2005 - 16:46 #6
Man kan gøre mange ting i php.ini-filen. Men heller få rettet ind fra starten - syn's jeg.
Avatar billede steenolsen1 Nybegynder
30. oktober 2005 - 18:24 #7
Faktisk har jeg igennem længere tid programmeret med ' erne, men mange gamle ting, er lavet uden, hvilket betyder at jeg har *en hel del* efter gammel standard...

Hvor i php.ini ændrer man disse indstillinger? Om ikke andet, så for at kontrollere, at det "kun" er det.
Avatar billede steenolsen1 Nybegynder
31. oktober 2005 - 09:55 #8
Tror alligevel ikke helt, at det var det, for der meldes fejl ud for denne linie:
        if(($_GET['menu'] != 'butik') AND ($_GET['menu'] != 'varekurv') AND ($_GET['menu'] != 'kassen')) {

Den er vel sådan set rigtig nok, ikke?
Avatar billede erikjacobsen Ekspert
31. oktober 2005 - 10:38 #9
Ikke nødvendigvis. Før du bruger en $_GET['menu'] skal du spørge om værdien findes med

  if (isset($_GET['menu']) { .... }
Avatar billede erikjacobsen Ekspert
31. oktober 2005 - 10:38 #10
Og en udgave uden syntaksfejl

    if (isset($_GET['menu'])) { .... }
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester