Gå til innhold

[LØST]Upload system med godkjenning av bilder


Anbefalte innlegg

Skrevet (endret)

har laget dette scriptet

 

Klikk for å se/fjerne innholdet nedenfor
<?php

if(isset($_SESSION['username'])) {

 

 

 

 

echo(' <br />Last opp profilbilde:<br />

 

<FORM ENCTYPE="multipart/form-data" ACTION="' . $PHP_SELF . '" METHOD="POST">

 

<INPUT TYPE="file" NAME="userfile">

 

<INPUT TYPE="submit" VALUE="Last opp">

 

</FORM>');

}

include("mysqlconnect/mysql_connect.php");

$q = mysql_query( "SELECT username, id FROM brukere WHERE username ='{$_SESSION['username']}'" );

while($row = mysql_fetch_object($q)){

$id = $row->id;

 

}

 

$path = "user/";

 

$max_size = "500000";

 

if (!isset($HTTP_POST_FILES['userfile']))

 

 

 

if (is_uploaded_file($HTTP_POST_FILES['userfile']['tmp_name'])) {

 

 

if ($HTTP_POST_FILES['userfile']['size']>$max_size) { echo "Filen er for stor, maks størrelse er 500kb<br>n"; exit; }

 

if (($HTTP_POST_FILES['userfile']['type']=="image/gif") || ($HTTP_POST_FILES['userfile']['type']=="image/jpeg") || ($HTTP_POST_FILES['userfile']['type']=="image/jpeg") || ($HTTP_POST_FILES['userfile']['type']=="image/png")) {

 

 

 

$res = move_uploaded_file($HTTP_POST_FILES['userfile']['tmp_name'], $path .

 

$HTTP_POST_FILES['userfile']['name']);

$my_file = $HTTP_POST_FILES['userfile']['name'];

 

 

chmod("user/$my_file", 0777);

rename("user/$my_file", "user/$id.jpg");

 

if (!$res) { echo "Bildet ble lastet opp<br>"; } else { echo "Opplastingen er vellykket, bildet blir godkjent innen 24 timer.<br>"; }

 

 

 

echo "Bilde navn: ".$HTTP_POST_FILES['userfile']['name']."<br>";

 

echo "Fil størrelse: ".$HTTP_POST_FILES['userfile']['size']." bytes<br>";

 

echo "Fil type: ".$HTTP_POST_FILES['userfile']['type']."<br>";

 

} else { echo "Feil fil type<br>"; }

 

}

 

$update = ("UPDATE brukere SET profilbilde='0' WHERE username ='{$_SESSION['username']}'" );

mysql_query($update);

 

?>

<br /><span class="skrift">

<a href="index.php?side=endreprofil">Tilbake</a></span>

 

OPPDATERING:

 

har oppdaget nå at scriptet ikke fungerer idet hele tatt:S vet ikke hvorfor.

 

LØST:

Blei så forbannet lei at jeg laget et annet script.

Endret av slippern
Videoannonse
Annonse
Gjest Slettet+142
Skrevet

hva gjør du med bildene etter opplasting?

Flytter du de bare til en mappe, eller oppdaterer du også mysql database med informasjon om bilde, plassering, opplaster, dato, opplaster-ip osv?

Skrevet
hva gjør du med bildene etter opplasting?

Flytter du de bare til en mappe, eller oppdaterer du også mysql database med informasjon om bilde, plassering, opplaster, dato, opplaster-ip osv?

9121092[/snapback]

 

akkurat nu så blir dem bare flyttet til en mappe.

Gjest Slettet+142
Skrevet

Ok. Hvis du vil ha godkjenning med det systemet du har nå, kan du jo flytte de nylig opplastede bildene til en mappe som ikke leses av galleriet ditt.

De bildene du godkjenner ifra den mappen, flytter du til den mappen som leses av galleriet ditt.

Bildene du ikke godkjenner, sletter du :)

Skrevet
Hva har det med saken a gjore?

9123002[/snapback]

sånn at filnavnet på bilde havner i databasen, katti bilde ble uploadet og mere.

Skrevet

Da kan du bare ha eit felt i databasen som du setter til 1 når bildet er validert. Og så endrer du galleri skriptet til å bare vise bilder der validert feltet er 1

Skrevet

har funnet et ferdig script nu, driver å redigerer som fy på det:P

 

men, mangler 1 ting, bildet MÅ hete 1.jpeg

 

er det mulig og få 1.jpeg?$id ?

Skrevet (endret)

Du bør bruke move_uploaded_file() i stedet for copy().

"user/" og "/user/" er ikke nødvendigvis det samme - ser ut til at du kanskje prøver på chmod'e feil sted.

Endret av ZoRaC
Skrevet

Warning: rename() [function.rename]: SAFE MODE Restriction in effect. The script whose uid is 360366 is not allowed to access / owned by uid 0.

 

hvordan kommer jeg rundt den der?

Skrevet

Du kan starte med å bytte alle $HTTP_POST_FILES med $_FILES.

Fjerne $PHP_SELF. Kan ikke se at den er definert noen plass.

 

Sette dette på toppen:

ini_set( 'display_errors', 1 );
error_reporting( E_ALL );

og

echo mysql_error();

på bunnen.

 

$q = mysql_query( "SELECT username, id FROM brukere WHERE username ='{$_SESSION['username']}'" );
while($row = mysql_fetch_object($q)){
$id = $row->id;

}

Dette trenger du heller ikke å ha i en loop. Den skal jo bare returnere en verdi uansett.

 

Etter det kan du fikse indenteringen og linjeskift.

PHP
<?php

if ( TRUE //LINJESKIFT

{

$foo something(); //Indenter

if ( $foo != FALSE //Linjeskift

{

$bar something_else(); //Indenter enda en gang

}

}

?>

Skrevet

har gjort det nå

 

kom bare opp:

 

Notice: Constant DB_USER already defined in /customers/arctic-nuke.com/arctic-nuke.com/httpd.www/*/*.php on line 2

Notice: Constant DB_PASSWORD osv osv

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
×
×
  • Opprett ny...