Register globals vara eller inte vara.
Register globals vara eller inte vara.
Jag tror att jag har dragit upp det här ämnet förut, men jag kommer inte ihåg alla svar, tror ändå inte jag var nöjd med dem, och hittar inte tråden med sökfunktionen iaf.
PHP är min fråga om, och funktionen register globals, som PHP deklarerar som dum att ha på, för att det kan skapa säkerhetsluckor och göra att script och dess variabler krånglar.
På nåt sätt.
Jag har ståndaktigt försökt klara mig utan reg. glob. men när det kommer till formulärdata skiter det sig ordentligt ibland.
När jag ska POSTa en fil via formulär, så vill inte filen följa med om jag använder $fil = $_REQUEST[fil]
Den bara vägrar. Och jag vet inget annat sätt att släpa med filen ifråga från formuläret... hjälp..
Ett exempel kommer jag (om jag kommer ihåg det) att kunna posta senare ikväll.
Hur gör ni andra som kör PHP på servern?
Av eller på med register globals?
PHP är min fråga om, och funktionen register globals, som PHP deklarerar som dum att ha på, för att det kan skapa säkerhetsluckor och göra att script och dess variabler krånglar.
På nåt sätt.
Jag har ståndaktigt försökt klara mig utan reg. glob. men när det kommer till formulärdata skiter det sig ordentligt ibland.
När jag ska POSTa en fil via formulär, så vill inte filen följa med om jag använder $fil = $_REQUEST[fil]
Den bara vägrar. Och jag vet inget annat sätt att släpa med filen ifråga från formuläret... hjälp..
Ett exempel kommer jag (om jag kommer ihåg det) att kunna posta senare ikväll.
Hur gör ni andra som kör PHP på servern?
Av eller på med register globals?
Datorer behöver i framtiden inte väga mer än 1,5 ton
- Popular mechanics 1949
- Popular mechanics 1949
- Niklas Berggren
- Hedersbit
- Posts: 3524
- Joined: 2002-03-08 17:53:04
- Location: Göteborg (Skövde)
- Contact:
När jag satt o lärde mig PHP så hade jag globals påslaget (det var innan det kom som "off" som standard).
Nuförtiden använder jag mig inte av globals. Även om koden kan vara säker med globals blir det ändå... omständigt
Posta din kod så kan vi felsöka den?
Nuförtiden använder jag mig inte av globals. Även om koden kan vara säker med globals blir det ändå... omständigt
Posta din kod så kan vi felsöka den?
"How about the government sticks to courts, police, defense and corruption and leave compassion to the people who have it?" - Penn Jillette.
- Niklas Berggren
- Hedersbit
- Posts: 3524
- Joined: 2002-03-08 17:53:04
- Location: Göteborg (Skövde)
- Contact:
- Niklas Berggren
- Hedersbit
- Posts: 3524
- Joined: 2002-03-08 17:53:04
- Location: Göteborg (Skövde)
- Contact:
Tack för alla svaren!
Jag postar (den mycket provisoriska) koden här:
Observera att jag har testat med att ha register globals off, men jag kan inte kalla in variabeln $bild ordentligt.
Jag postar (den mycket provisoriska) koden här:
Code: Select all
<html>
<head>
<link rel="STYLESHEET" type="text/css" href="../canissheet2.css">
<script language="JavaScript" src="../scripts/uglyIE.js"></script>
</head>
<body background="../gfx/paw.gif" bgproperties="fixed">
<?
if ($skicka) {
if ($bild != "" && $bild != "none"){
copy($bild,"../pict/$bild_name");
echo "Du laddade upp filen <b>$bild_name</b><br>";
$storlek = $bild_size / 1000;
echo "Den är $storlek kilobytes stor";
}
}
?>
<form name="upload" action="<? echo $PHP_SELF ?>" method="POST" enctype="multipart/form-data">
Leta upp bilden du vill ladda upp:
<input type="file" name="bild">
<p></p>
<input type="submit" name="skicka" value="Ladda upp">
</form>
</body>
</html>
Datorer behöver i framtiden inte väga mer än 1,5 ton
- Popular mechanics 1949
- Popular mechanics 1949
- Niklas Berggren
- Hedersbit
- Posts: 3524
- Joined: 2002-03-08 17:53:04
- Location: Göteborg (Skövde)
- Contact:
din "copy($bild,"../pict/$bild_name");
ser lite misstänksam ut. Vad händer om du ger en absolut sökväg samt ett absolut filnamn?
ex. /home/www/massapr0n.jpg? (se till så apache eller vad du nu använder har skrivrättigheter!)
Har inte sysslat mycket med filuploads förut men genereras variabeln $bild_name automagiskt?
ser lite misstänksam ut. Vad händer om du ger en absolut sökväg samt ett absolut filnamn?
ex. /home/www/massapr0n.jpg? (se till så apache eller vad du nu använder har skrivrättigheter!)
Har inte sysslat mycket med filuploads förut men genereras variabeln $bild_name automagiskt?
"How about the government sticks to courts, police, defense and corruption and leave compassion to the people who have it?" - Penn Jillette.
$_POST['bild'] är det som gäller om du har off. (eller så blandar jag ihop med on/off)Oni wrote:Tack för alla svaren!
Jag postar (den mycket provisoriska) koden här:
Observera att jag har testat med att ha register globals off, men jag kan inte kalla in variabeln $bild ordentligt.Code: Select all
<html> <head> <link rel="STYLESHEET" type="text/css" href="../canissheet2.css"> <script language="JavaScript" src="../scripts/uglyIE.js"></script> </head> <body background="../gfx/paw.gif" bgproperties="fixed"> <? if ($skicka) { if ($bild != "" && $bild != "none"){ copy($bild,"../pict/$bild_name"); echo "Du laddade upp filen <b>$bild_name</b><br>"; $storlek = $bild_size / 1000; echo "Den är $storlek kilobytes stor"; } } ?> <form name="upload" action="<? echo $PHP_SELF ?>" method="POST" enctype="multipart/form-data"> Leta upp bilden du vill ladda upp: <input type="file" name="bild"> <p></p> <input type="submit" name="skicka" value="Ladda upp"> </form> </body> </html>
Grundare av webbyrån We made you look http://wemadeyoulook.at
- Niklas Berggren
- Hedersbit
- Posts: 3524
- Joined: 2002-03-08 17:53:04
- Location: Göteborg (Skövde)
- Contact:
Sökvägen fungerar utmärkt, problemet inträffar innan den raden, och det är att variabeln $bild saknar innehåll.Nicke. wrote:din "copy($bild,"../pict/$bild_name");
ser lite misstänksam ut. Vad händer om du ger en absolut sökväg samt ett absolut filnamn?
ex. /home/www/massapr0n.jpg? (se till så apache eller vad du nu använder har skrivrättigheter!)
Har inte sysslat mycket med filuploads förut men genereras variabeln $bild_name automagiskt?
Ja, variabeln $bild_name skapas automatiskt, enligt min PHP-bok så snart formuläret laddat upp bilden till temp, det vill säga när man trycker 'submit'.
En av frågorna som jag ställer mig är var den variabeln tar vägen nånstans, eftersom det inte verkar gå att göra en $_REQUEST efter den.
Datorer behöver i framtiden inte väga mer än 1,5 ton
- Popular mechanics 1949
- Popular mechanics 1949
bl.a . sen finns det $_SESSION , $_COOKIE , $_GET etc.Oni wrote:$_POST har jag aldrig använt, i vilket sammanhang gör man det?Quork wrote:$_POST['bild'] är det som gäller om du har off. (eller så blandar jag ihop med on/off)
När man ska hämta en variabel från ett formulär eller?
Grundare av webbyrån We made you look http://wemadeyoulook.at
Tja när du ställer in method för formuläret så kan du ju t.ex. välja post eller get $_POST hämtar från post osv... $_REQUEST hämtar väl från vilken som helst i guessOni wrote:$_POST har jag aldrig använt, i vilket sammanhang gör man det?Quork wrote:$_POST['bild'] är det som gäller om du har off. (eller så blandar jag ihop med on/off)
När man ska hämta en variabel från ett formulär eller?
(jag vet inte, jag bara drar slutsatser från tidigare erfarenheter )
IL1
Såhär fungerar det utan register globals
Den array som skapas efter att filen skickats:
Formuläret:
Den array som skapas efter att filen skickats:
Code: Select all
$_FILES['userfile']['name']
= Orginalnamn
$_FILES['userfile']['type']
= Filtypen
$_FILES['userfile']['size']
= Storlek (byte)
$_FILES['userfile']['tmp_name']
= Temporärt namn i /tmp (linux) / den katalog du valt i windows
$_FILES['userfile']['error']
= Eventuell error
Formuläret:
Code: Select all
<form enctype="multipart/form-data" action="sidan.php" method="post">
<!-- Typ av formulär, vilken sida, vilken method -->
<input type="hidden" name="MAX_FILE_SIZE" value="30720"> <!-- Max storlek, i byte -->
Välj fil: <input name="userfile" type="file"> <!-- där du väljer filen -->
<br><br>
<input type="submit" value="Skicka fil">
<!-- Knapp för att skicka filen -->
</form>
Tack Thr! Det ska jag testa medthr wrote:Såhär fungerar det utan register globals
Den array som skapas efter att filen skickats:Code: Select all
Massa kod
Datorer behöver i framtiden inte väga mer än 1,5 ton
- Popular mechanics 1949
- Popular mechanics 1949