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å.
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.
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
....
?>
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
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 '.
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.
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?