Uploaden met naam + wachtwoord

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Tim van Norde

Tim van Norde

05/01/2011 12:57:32
Quote Anchor link
Hallo,

mijn game houd via .ini bestanden de stats van spelers bij en stuurt naar mijn webhost een simpele opdracht om een bestand met wachtwoord (md5 hash) bij te houden. Deze hash zet ik in gebruikersnaam.txt ,gebruikersnaam kan vanalles zijn.

Nu wil ik dat mensen hun eigen avatar kunnen uploaden, dit gaat wel, maar ik wil graag dat je ook je gebruikersnaam en wachtwoord in moet vullen, dit wachtwoord wordt met het wachtwoord in gebruikersnaam.txt vergeleken.

Dit is mijn formulier:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
<html>
<body>

<form action="upload_file.php" method="get">

<label form="file">Filename:</label> <input type="file" name="file" id="file" /></br>
Name: <input type="text" name="name" />
Password: <input type="text" name="pass" />
<input type="submit" />
</form>

</body>
</html>


En dit is mijn PHP script om het te checken en op te slaan:"

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
<?php

//$name = "Tim";
//$pass = "Bullshit";


$name = $_GET['name'];
$pass = $_GET['pass'];

//$myFile = "Tim.txt";
//$fh = fopen($myFile, 'r');
//$theData = fread($fh, filesize($myFile)) or die("Loading file failed");
//fclose($fh);


if($pass=="darten1")
    {

    echo "Succesfully logged in!";
    }

else
    {
    echo "Failed to login";
    exit;
    }


echo $_FILES["file"]["name"];
echo $_FILES["file"]["type"];

if ((($_FILES["file"]["type"] == "image/png"))
&& (
$_FILES["file"]["size"] < 20000))
  {

  if ($_FILES["file"]["error"] > 0)
    {

    echo "Return Code: " . $_FILES["file"]["error"] . "<br />";
    }

  else
    {
    echo "Upload: " . $_FILES["file"]["name"] . "<br />";
    echo "Type: " . $_FILES["file"]["type"] . "<br />";
    echo "Size: " . ($_FILES["file"]["size"] / 1024) . " Kb<br />";

    if (file_exists("EWO/Avatars/" . $_FILES["file"]["name"]))
      {

      echo $_FILES["file"]["name"] . " already exists. ";
      }

    else
      {
      move_uploaded_file($_FILES["file"]["tmp_name"],
      "EWO/Avatars/" . $name . ".png");
      echo "Stored in: " . "EWO/Avatars/" . $_FILES["file"]["name"];
      }
    }
  }

else
  {
  echo "Invalid file";
  }

?>


Maar ik krijg te zien: Invalid file, wat dus betekent dat het bestand geen .png bestand is, of groter dan 20kb.

Het bestand waarmee ik test is 510 Bytes, en heet myavatar.png.

Wat doe ik fout?
 
PHP hulp

PHP hulp

22/12/2024 13:26:14
 
Kris Peeters

Kris Peeters

05/01/2011 13:20:40
Quote Anchor link
Begin al eens met een enctype in je form te zetten.
 
Tim van Norde

Tim van Norde

05/01/2011 15:10:38
Quote Anchor link
Het script helemaal veranderd, de enctype toegevoegd. Het werkt nu :) Super!
Dankjewel.
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.