Avatar billede dj-meisner Nybegynder
22. juli 2005 - 16:33 Der er 9 kommentarer og
2 løsninger

PHP: Upload billedere.

Hey, hvordan får jeg den til at lave billede navnet til $_SESSION[brugernavn].gif/jpg? også skal den opdatere "billede" i tabellen brugere til $_SESSION[brugernavn].gif/jpg.

på forhånd tak!

- kode eks:
<?
session_start();
include("db.php");
if($_POST[upload]) {

if($_FILES[billede][type] != "image/gif" AND $_FILES[billede][type] != "image/jpeg") {
print "Du kan kun uploade .GIF og .JPG filer!";
}else{


$dir = "profilbilledere/".$_FILES[billede][name];
if(move_uploaded_file($_FILES[billede][tmp_name],$dir)) {

mysql_query("UPDATE brugere SET billede = '$_SESSION[brugernavn].$_FILES[billede][type]', billedesat = 'ja' WHERE brugernavn = '$_SESSION[brugernavn]'");

print "<h4>Billedet er nu uploadet!</h4>";

}else{
print "<h4>En fejl opstod!</h4>";

}
}
}
?>
Avatar billede Slettet bruger
22. juli 2005 - 16:41 #1
Du kan rename filer med http://dk2.php.net/rename
Avatar billede sukos Juniormester
22. juli 2005 - 17:33 #2
$filtyper = array(1 => "gif", 2 => "jpg");

if(false != ($str = getimagesize($_FILES["billede"]["tmp_name"]))) {
    if(array_key_exists($str[2], $filtyper)) {
    $name = $_SESSION["brugernavn"] .".". strtr($str[2], $filtyper);
    move...........
    query..........
    }
}

Men du kan evt. få bøvl med brugernavnet som billedenavn, medmindre du holder styr på hvad de må hedde! :O)
Avatar billede Slettet bruger
22. juli 2005 - 20:53 #3
Well.. kan du ikke gøre sådan:

<?
session_start();
include("db.php");
if(isset($_POST['upload']))
    {
    if($_FILES['billede']['type'] != "image/gif" && $_FILES['billede']['type'] != "image/jpeg")
        {
        print "Du kan kun uploade .GIF og .JPG filer!";
        }
    else
        {
        if(preg_match("/\.[a-zA-Z]{3,4}$/", $_FILES['billede']['name']))
            {
            $PictureName = $_SESSION['brugernavn'] . preg_replace("/(\.[a-zA-Z]{3,4})$/", "$1", $_FILES['billede']['name']);
            $dir = "profilbilledere/" . $PictureName;
            if(move_uploaded_file($_FILES['billede']['tmp_name'],$dir))
                {
                mysql_query("UPDATE brugere SET billede = '". $PictureName ."', billedesat='ja' WHERE brugernavn='". $_SESSION['brugernavn'] ."'");
                print "<h4>Billedet er nu uploadet!</h4>";
                }
            else
                {
                print "<h4>En fejl opstod!</h4>";
                }
            }
        else
            {
            print "<h4>Billedet har en forkert type</h4>";
            }
        }
    }
?>
Avatar billede dj-meisner Nybegynder
22. juli 2005 - 23:08 #4
Næsten, den sætter fx. djmeisnerBILLEDET.gif ind, altså den sætter filnavnet ind bagefter sit brugernavn, det skal KUN være sit brugernavn også filtypen. fx. wicez.gif..

og et andet problem, nu vil den ikke sætte .jpg filer ind.

sidst men ikke mindst, kan i så ikke lave sådan den max må fylde 50 kb?
Avatar billede Slettet bruger
23. juli 2005 - 12:44 #5
Det giver ikke rigtig meningen at billedenavnet er med.. det kan jeg ikke helt forstå at det er..
Avatar billede dj-meisner Nybegynder
23. juli 2005 - 15:16 #6
hvis du nu er logget ind som wicez og skal uploade et billede, så bliver det billede du uploadet til wicez.gif eller .jpg alt efter hvilken type du uploadet.
Avatar billede Slettet bruger
23. juli 2005 - 16:52 #7
Ja, hvad skal den gør? skal den sætte billedenavnet ind? :

<?
session_start();
include("db.php");
if(isset($_POST['upload']))
    {
    if($_FILES['billede']['type'] != "image/gif" && $_FILES['billede']['type'] != "image/jpeg")
        {
        print "Du kan kun uploade .GIF og .JPG filer!";
        }
    else
        {
        if(preg_match("/\.[a-zA-Z]{3,4}$/", $_FILES['billede']['name']))
            {
            $PictureName = $_SESSION['brugernavn'] . $_FILES['billede']['name'] . preg_replace("/(\.[a-zA-Z]{3,4})$/", "$1", $_FILES['billede']['name']);
            $dir = "profilbilledere/" . $PictureName;
            if(move_uploaded_file($_FILES['billede']['tmp_name'],$dir))
                {
                mysql_query("UPDATE brugere SET billede = '". $PictureName ."', billedesat='ja' WHERE brugernavn='". $_SESSION['brugernavn'] ."'");
                print "<h4>Billedet er nu uploadet!</h4>";
                }
            else
                {
                print "<h4>En fejl opstod!</h4>";
                }
            }
        else
            {
            print "<h4>Billedet har en forkert type</h4>";
            }
        }
    }
?>
Avatar billede Slettet bruger
23. juli 2005 - 16:52 #8
Jeg regner med at du har fået svar på dit spørgsmål - ellers må du lige uddybe.
Avatar billede dj-meisner Nybegynder
23. juli 2005 - 23:11 #9
billedenavnet du uploadet skal ændres til dit brugernavn!
Avatar billede Slettet bruger
24. juli 2005 - 00:09 #10
Er det ikke også det det bliver med det jeg skrev 22/07-2005 20:53:49 ?
Avatar billede dj-meisner Nybegynder
11. august 2005 - 15:20 #11
nej
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester