Avatar billede Slettet bruger
28. juni 2006 - 14:58 Der er 28 kommentarer og
1 løsning

Billed oplaod

hej Eksperter..
Jeg har lavet et login system hvor være bruger har en profil og gæstebog og det der, og det er muligt at have et profil billed, men billedet skal jo ligge på nettet i forvejen.Så vis en kan lave eller forklare hvordan det gøresville jeg være glad..
Avatar billede tedar Nybegynder
28. juni 2006 - 15:06 #1
Vil du hente billedet fra en ekstern url hver gang billedet bliver vist, vil du hente billedet ned på din server når man opretter en profil, eller uploade det til din server?
Avatar billede Slettet bruger
28. juni 2006 - 15:10 #2
Hov. det gik vist lidt hurtigt. jeg har en side hvor man kan gå ind og rette i sin profil og der skal man kunne oploade et billed som så bliver vist på  ens profil..
Lige nu der kan man kun indsætte billedets url feks: http://www.eksperten.dk/img/epro.png også bliver det vist. ..
Men det vil gerne have at man kan oploade et selv..
Men ved ikke hvordan det skal kodes`?
Avatar billede jaw Nybegynder
28. juni 2006 - 15:20 #3
En simpel upload kan vist se sådan ud:

<form action='upload.php' method='post' enctype='multipart/form-data'>
<input type='file' name='userfile'>
<input type='submit'>

Upload.php:
<?
if(!empty($_FILES['userfile']['name'])) {
    if(is_uploaded_file($_FILES['userfile']['tmp_name'])) {
        move_uploaded_file($_FILES['userfile']['tmp_name'], "mappe/".$_FILES['userfile']['name'])
    }
}
?>

Og husk så, at mappen "mappe" hvor du vil have dine billeder skal være CHMOD'et med skriverettigheder.
Avatar billede jaw Nybegynder
28. juni 2006 - 15:23 #4
Der mangler lige et ; til sidst i move_uploaded_file-linien.
Avatar billede Slettet bruger
28. juni 2006 - 15:30 #5
Hej igen jaw:D
Hvordan for jeg så linket til lige det billed frem?
Avatar billede jaw Nybegynder
28. juni 2006 - 15:32 #6
Hej, hej :) Har du fået uploaden til at virke?

Det du gør - eller en måde at gøre det på i hvert fald, er at gemme filnavnet i din database, og så er det jo bare:
  echo"<img src='/mappe/".$row['filnavn']."'>.
...principielt i hvert fald.
Avatar billede Slettet bruger
28. juni 2006 - 15:34 #7
Ok. Kan jeg godt ligge formen og upload.php i samme fil vis det er?
Avatar billede jaw Nybegynder
28. juni 2006 - 15:35 #8
Tjah, det kan du da godt, men det har jeg aldrig været fan af. Hvorfor vil du det da?
Avatar billede Slettet bruger
28. juni 2006 - 15:38 #9
Den mappe skal ligge i roden ikk?
Avatar billede jaw Nybegynder
28. juni 2006 - 15:39 #10
Jo - og så skal den CHMOD'es, husk det!
Avatar billede Slettet bruger
28. juni 2006 - 15:39 #11
Og hva skal jeg chmod den til? er det ikke 666?
Avatar billede Slettet bruger
28. juni 2006 - 15:49 #12
Så nu kan jeg oploadet..Men vil du ikke lige hjælpe mig med databasen?
Avatar billede jaw Nybegynder
28. juni 2006 - 15:54 #13
Tjoh, men der skal du jo enten lave uploaded i forbindelse med oprettelse af profilen, eller som en mulighed for brugeren senere.

Det vil sige, at det enten bare er en del af din INSERT, eller du skal lave en UPDATE af brugerens profil.

Giver det mening? :)
Avatar billede Slettet bruger
28. juni 2006 - 15:59 #14
Jah og men det var heller ikke så meget det, men at finde den nye url til billedet.. Er det bare at lave $billed = $_POST['formnavn']; ?
også skal det selvfølgelig med i mysqæ strangen? har jo ellerade en update side så det er ikke problemet..
Avatar billede jaw Nybegynder
28. juni 2006 - 16:00 #15
I forbindelse med uploaden er filnavnet $_FILES['userfile']['name']
Avatar billede Slettet bruger
28. juni 2006 - 16:02 #16
så den skal hede $billed = $_FILES['userfile']['name']?
Avatar billede jaw Nybegynder
28. juni 2006 - 16:03 #17
Ja, hvis du absolut vil lave en ekstra variabel ud af det :)
Avatar billede Slettet bruger
28. juni 2006 - 16:05 #18
Nårh jeg kan vel bare skrive $_FILES['userfile']['name'] i mysql strangen?
Avatar billede jaw Nybegynder
28. juni 2006 - 16:09 #19
Det er det mest optimale ja, så det er en god ide. Bare husk at holde styr på " og '.
Avatar billede Slettet bruger
28. juni 2006 - 16:24 #20
Nu har jeg skrevet det ind i det kode jeg havde i forvejen, men nu uploader den ikke noget i data base skriver den [name]..? du for lige hele koden.

<?php
session_start();
?>
<?php
include_once("connect.php");
include("menu.php");
include_once("check.php");
$q1 = mysql_query("select * from nickin_brugere where id = '$_GET[id]'");
$edit = mysql_fetch_array($q1);
if(!empty($_FILES['billed']['name'])) {
    if(is_uploaded_file($_FILES['billed']['tmp_name'])) {
        move_uploaded_file($_FILES['billed']['tmp_name'], "../profilbilled/".$_FILES['billed']['name']);

}}
if($edit['brugernavn'] == $_SESSION['Brugernavn']){
if($_GET['do'] == "gem"){
mysql_query("update nickin_brugere set billede = '$_FILES[billed][name]' where id = '$_GET[id]'");
mysql_query("update nickin_brugere set navn = '$_POST[navn]' where id = '$_GET[id]'");
mysql_query("update nickin_brugere set alder = '$_POST[alder]' where id = '$_GET[id]'");
mysql_query("update nickin_brugere set email = '$_POST[email]' where id = '$_GET[id]'");
}
$edit_db = mysql_query("select * from nickin_brugere where id = '$_GET[id]'");
$edit = mysql_fetch_array($edit_db);
?>
<html>
<head>
<title>Untitled Document</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<link rel="stylesheet" type="text/css" href="../siderne/style.css">
</head>

<body>
<form name="form1" method="post" action="editprofil.php?do=gem&id=<?php print $edit['id'] ?>">
  <p>Url til profil billede (lad feltet være blankt, hvis du ikke ønsker et profilbillede):
    <input name="billed" type="file" value="<?php print $edit['billede'] ?>"></p>
      <p>Dit Navn:
    <input name="navn" type="text" id="navn" value="<?php print $edit['navn'] ?>"></p>
      <p>Din Alder:
    <input name="alder" type="text" id="alder" value="<?php print $edit['alder'] ?>"></p>
      <p>Din Email:
    <input name="email" type="text" id="email" value="<?php print $edit['email'] ?>"></p>
  <p>
    <input name="submit" type="submit" id="submit" value="Gem">
  </p>
</form>
</body>
</html>
<?php
}
?>
Avatar billede jaw Nybegynder
28. juni 2006 - 16:26 #21
Har du husket enctype-delen i din <form>?
Avatar billede Slettet bruger
28. juni 2006 - 16:30 #22
Nej det havde jeg ikke, men har skrevet det nu, men nu skriver den Array[name] i databasen og den har ikke oploadet noget? :S
Avatar billede Slettet bruger
28. juni 2006 - 16:40 #23
Sker der noget?? .:S
Avatar billede jaw Nybegynder
28. juni 2006 - 16:49 #24
Prøv lige:

mysql_query("update nickin_brugere set billede = '".$_FILES['billed']['name']."' where id = ".$_GET[id]);
Avatar billede Slettet bruger
28. juni 2006 - 16:55 #25
Nu skrive den det rigtige i databasen men den oploader stadig ikke noget?
Avatar billede jaw Nybegynder
28. juni 2006 - 17:23 #26
Prøv at indsætte:
echo "Yes";
lige før move_uploaded_file-linien og se om den udskriver "yes".
Avatar billede Slettet bruger
28. juni 2006 - 17:34 #27
haha.. Den udskriver ikke Yes men istedet det rigtige billed :S Dvs. at den faktisk oploader det nu..
Tak for hjælpen Læg et svar.!
Avatar billede jaw Nybegynder
28. juni 2006 - 17:43 #28
Øh okey, selv tak :) Hvis der bliver ballade må du bare sige til...
Avatar billede Slettet bruger
28. juni 2006 - 17:46 #29
Skal jeg nok.
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