nanneMedlem sedan dec. 19991 047 inlägg
Tjo...
Har varit seg och inte uppdaterat mitt liv/PHP på länge och nu visar det sig ju det där med $_GET och $_SERVER var ett BIG problemo.
Jag har en sida som jag vill ha uppe och fungerande medans jag uppdaterar den till att fungera med det nya (som jag tycker är grejt). Har provat med att sätta register_globals = On men det blir error ändå.
NiehlsMedlem sedan juli 2002164 inlägg
men om du har register_globals satt till 1/on så skall variabler som vanligtvis åtkoms genom t.ex $_POST["variabel"] kunna nås med $variabel. hmm, undrar om jag förstått din fråga rätt...
vill du ändra från $HTTP_POST_VARS[] (har aldrig använt dessa, så rätta mig (snällt) om jag har fel) till $_POST[] eller har du tidigare använt register_globals som 1 och kört $variabel istället för $_POST["variabel"]?
nu kanske det blev lite stökigt här... förstår inte riktigt din fråga tror jag.
nanneMedlem sedan dec. 19991 047 inlägg
men men
Jag har inte använt $_POST och $_GET osv.. tidigare. Så om register_global=on skulle ha löst mitt problem så vette fan.
Jag testar igen. Jag har två php.ini på servern. Men jag har satt båda på on så.
nanneMedlem sedan dec. 19991 047 inlägg
va fan!
skulle varit under min tråd om ordna gamla scripts :(
Fredde MannenMedlem sedan nov. 20013 498 inlägg
Re: men men
nanne skrev:
Jag har inte använt $_POST och $_GET osv.. tidigare. Så om register_global=on skulle ha löst mitt problem så vette fan.
Jag testar igen. Jag har två php.ini på servern. Men jag har satt båda på on så.
Vad är ditt problem, blir det error när du använder dig av $_POST och $_GET?
Om så är så har det inget med register_globals = on eller off.
Jag har för mig att $_POST och $_GET infördes i PHP version 4, så har man en äldre version får man använda sig av $HTTP_POST_VARS och $HTTP_GET_VARS[].
Men vi förutsätter att du har PHP 4.
Ett script med $_POST och $_GET bör väl se ut så här:
<?php
// Vid formulärpostningar ex.
$sNamn = $_POST["namn"]; // namn från ett formulär el. liknande
$sEpost = $_POST["epost"]; // epost från ett formulär.
echo $sNamn . " har email: " . $sEpost;
// Vid uppsnappning från länkar ex:
$intID = $_GET["sidid"]; // ID nummer i en databas ex.
$sSektion = $_GET["sektion"]; // en sektion kanske en mapp eller liknande
....
?>
:OO
netfeedMedlem sedan mars 2001516 inlägg
vad är det för skillnad mellan $_GET["variabel"] och $_GET['variabel'] ???
pimmeMedlem sedan sep. 2001553 inlägg
$_GET["variabel"] är korrekt
$_GET['variabel'] och $_GET[variabel] funkar sålänge error-reporting inte är satt till E_ALL eller E_NOTICE
netfeedMedlem sedan mars 2001516 inlägg
dags att börja ändra sina phpsidor då
MatteMedlem sedan aug. 20002 970 inlägg
$_GET['variabel'] är fullständigt korrekt, till och med att rekommendera.
pimmeMedlem sedan sep. 2001553 inlägg
hmm, kollade igenom manualen lite noggrannare,
$_GET["hej"] och $_GET['hej'] ska funka, $_GET[hej] funkar men bör inte användas
om $_GET[hej]
This is wrong, but it works. Then, why is it wrong? The reason is that this code has an undefined constant (bar) rather than a string ('bar' - notice the quotes), and PHP may in future define constants which, unfortunately for your code, have the same name. It works, because the undefined constant gets converted to a string of the same name automatically for backward compatibility reasons
Matte: varför ' och inte " ?
MatteMedlem sedan aug. 20002 970 inlägg
Matte: varför ' och inte " ?
Båda går lika bra och ibland passar den ena bäst och ibland den andra. Normalt kan man välja vilket man tycker passar bäst.
Det var mest ett polemiserande mot att överhuvudtaget använda apostrof.
Men en liten skillnad finns det. PHP kollar koden mellan citationstecken ( " ) om där finns några variabler att lägga in, medan den bara suger med sig det som finns mellan apostrofer ( ' ) som text, med andra ord skulle det gå yttepyttelite snabbare med '.
Skillnaden:
$uno = 22;
echo $array['bild$uno'];
echo $array["bild$uno"];
nanneMedlem sedan dec. 19991 047 inlägg
*himlar med ögonen*
jag har inte använt $_GET osv förut till mina script. Men nu iom PHP 4.1.X så är ju det standard. Jag har installerat PHP 4.3.X. Men mina gamla script fungerar inte fastän jag har ställt in register_globals=On
Vad göra? Det är viktigt att siten är uppe medans jag bygger om.
MatteMedlem sedan aug. 20002 970 inlägg
$_GET, $_POST etc fungerar lika bra när register_globals är On som när det är Off, så det måste vara något annat som spökar för dig.
Hur ser din kod ut, och vad får du för felmeddelande ?
nanneMedlem sedan dec. 19991 047 inlägg
Jag får inget felmeddelande alls. Men register_globals = On funkar inte. Alla mina variabler (från formulär, querystrings etc.) får nämligen inte några värden. Siten är oförändrad sen jag hade en gammal version av PHP så det är inget som jag har kodat som är konstigt.
när man ändrat php.ini så måste man väl starta om apache? Det har jag gjort flertalet gånger eller är det något som jag måste göra ytterligare?
MatteMedlem sedan aug. 20002 970 inlägg
Ändra till följande i din php.ini:
error_reporting = E_ALL
display_errors = On
Sen kan du göra ett skript med följande kod:
<?php phpinfo(); ?>
Den ger dig vilka inställningar som är aktuella för PHP på din server.
nanneMedlem sedan dec. 19991 047 inlägg
Redan inställt så... det verkar som att php.ini inte har laddats om eftersom den säjer att register_globals=Off när jag kör phpinfo();
MatteMedlem sedan aug. 20002 970 inlägg
Efter ändringar i php.ini måste man starta om webservern.
PeWMedlem sedan juni 20006 839 inlägg
nanne skrev:
va fan!
skulle varit under min tråd om ordna gamla scripts :(
Problemet löst :)
nanneMedlem sedan dec. 19991 047 inlägg
men jag har ju startat om den för*annade apache minst 5gånger utan att det händer nåt :/
Provar med att starta om hela servern och ser om nåt händer...
nope det funkade inte heller... register_globals är fortfarande Off
Fredde MannenMedlem sedan nov. 20013 498 inlägg
aldrig hört på maken....
är det en windows eller en linux burk som du använder som server? *nyfiken*