Avatar billede -kenner- Nybegynder
28. april 2005 - 16:41 Der er 7 kommentarer og
1 løsning

Upload af billede

Hej eksperter,

Jeg søger en billede upload kode, og den skal gemme billedet som $id.. $id bliver hentet fra databasen. billedet skal gemmes i mappen Billeder, og hvis et billede med det navn allerede eksistere, så skal det nye overskrive det gamle.

Hvordan gøres det lige?

Mvh Kenneth
Avatar billede dugi Nybegynder
28. april 2005 - 17:06 #1
Lavede dette script forleden:
http://www.dugi.1go.dk/uploadpic/

Er det ca. sådan noget du mener? :)
Avatar billede -kenner- Nybegynder
28. april 2005 - 17:15 #2
Ja, sådan ca.

- Lad mig bare se din kode, men det skal helst være i et dokument, så det uploadet til sig selv..
Avatar billede -kenner- Nybegynder
28. april 2005 - 17:19 #3
Men behøver ikke en vis uploadede billeder-side.. bare der bliver skrevet "billedet er uploadet", når uploadet er sket.

Så skal billedet gemmes som $id, som hentes fra databasen, og så skal det nye billeder overskrive det gamle, hvis et billede allerede eksistere med det navn.. Altså sådan at der ikke er to billeder, som hedder det samme..
Avatar billede dugi Nybegynder
28. april 2005 - 17:19 #4
http://www.dugi.1go.dk/uploadpic/source.php

Du skal lige advares om den måske er rodet, sad i skolen og lavede den da jeg kedede mig - en ven skulle også lige hurtig se hvordan man gjorde :)
Avatar billede -kenner- Nybegynder
28. april 2005 - 21:33 #5
Okay, fint nok at få koden på bordet. Kan du så ikke hjælpe mig med at tilpasse den? Jeg ville gerne, hvis vi kunne holde java script udenfor :D

Kode:

<?php
$conn = mysql_connect('localhost','bruger','kode');
mysql_select_db('database');

if ($_GET['a'] == 'doupload')
{
  $fra = $_FILES["thefile"]["tmp_name"];
  $til = 'images/' . $_FILES["thefile"]["name"];

  if(function_exists("move_uploaded_file"))
  {
    move_uploaded_file($fra, $til);
  }
  else
  {
    copy($fra, $til);
  }

  mysql_query('INSERT INTO uploadpic (name,directry) VALUES (\''.$_POST['thefilename'].'\',\''.$til.'\')');
  $getthisid = mysql_fetch_array(mysql_query('SELECT id FROM uploadpic order by id desc LIMIT 1'));

  header('Location: index.php?s=view&id='.$getthisid['id'].'');
}
?>
<html>
<head>
<title></title>
</head>

<style type="text/css">
td
{
  font-family: Tahoma;
  font-size: 12px;
}
</style>

<script type="text/javascript">
function checkForm()
{
  errormsg = 'Following errors occured:\n\n';
  error = 0;

  if (document.uploadform.thefile.value == '')
  {
    errormsg += '- Choose the file you want to upload\n';
    error = 1;
  }
  if (document.uploadform.thefilename.value == '')
  {
    errormsg += '- The name of your file?';
    error = 1;
  }

  if (error == 1)
  {
    alert(errormsg);
    return false;
  }
  else
  {
    document.uploadform.submit();
  }
}

function movePicture()
{
  document.getElementById('viewpic').src = document.getElementById('selectpic').value;
}
</script>

<body>
<table style="width: 300px; border: 0px" cellspacing="0" cellpadding="0">
  <?php
  if ($_GET['s'] == '')
  {
  ?>
  <tr>
    <td style="height: 20px"><a href="index.php?s=upload">Upload picture</a></td>
  </tr>
  <tr>
    <td style="height: 20px"><a href="index.php?s=view">View pictures</a></td>
  </tr>
  <?php
  }
  elseif ($_GET['s'] == 'upload')
  {
  ?>
<form method="POST" action="index.php?a=doupload" name="uploadform" enctype="multipart/form-data" onSubmit="return checkForm()">
  <tr>
    <td style="height: 20px"><input type="file" name="thefile" style="font-family: Tahoma; font-size: 11px; color: #000000; width: 300px; height: 20px"></td>
  </tr>
  <tr>
    <td style="height: 5px"></td>
  </tr>
  <tr>
    <td style="height: 20px"><input type="text" name="thefilename" style="font-family: Tahoma; font-size: 11px; color: #000000; width: 150px; height: 20px"> - Name of the picture</td>
  </tr>
  <tr>
    <td style="height: 5px"></td>
  </tr>
  <tr>
    <td><input type="submit" name="dothaupload" value="Do ThA UpLoaD" style="font-family: Tahoma; font-size: 11px; color: #000000; height: 20px"></td>
  </tr>
</form>
  <?php
  }
  elseif ($_GET['s'] == 'view')
  {
  ?>
  <tr>
    <td style="height: 20px">
    <select name="selectpic" id="selectpic" onChange="movePicture()" style="font-family: Tahoma; font-size: 11px; color: #000000; height: 20px">
    <option value="images/nopic.jpg">---- Vælg billede ----</option>
    <option value="images/nopic.jpg"></option>
    <?php
    $getpictures_sql = mysql_query('SELECT * FROM uploadpic order by id asc');
    while($getpictures = mysql_fetch_array($getpictures_sql))
    {
    ?>
    <option value="<?php print $getpictures['directry']; ?>" <?php if ($getpictures['id'] == $_GET['id']) { print 'selected'; } ?>><?php print $getpictures['name']; ?></option>
    <?php
    }
    ?>
    </select>
    </td>
  </tr>
  <tr>
    <td style="height: 5px"></td>
  </tr>
  <tr>
    <td>
    <table style="border: 1px solid #000000" cellspacing="0" cellpadding="0">
      <tr>
        <td><?php if ($_GET['id'] != '' AND $_GET['id'] != 0) { $getpicture = mysql_fetch_array(mysql_query('SELECT * FROM uploadpic WHERE id = \''.$_GET['id'].'\'')); print '<img id="viewpic" src="'.$getpicture['directry'].'">'; } else { print '<img id="viewpic" src="images/nopic.jpg">'; } ?></td>
      </tr>
    </table>
    </td>
  </tr>
  <?php
  }
  ?>
</table>
</body>

</html>
<?php
mysql_close($conn);
exit;
?>
Avatar billede -kenner- Nybegynder
28. april 2005 - 21:35 #6
Punkter jeg genre vil gennem gå:

- Kun submitte, hvis det trykkes på submit/enter.
- Gemme billedet under navnet $id, sopm bliver hentet fra databasen
- Overskrive det eksisterende billede, hvis der allerede eksistere et med det navn det nye billeder bliver opladet som.

Mvh Kenenth
Avatar billede -kenner- Nybegynder
28. april 2005 - 23:20 #7
Kom til at tænke på om billedet bliver sat ind i mappen images, eller om det ryger i databasen? Vil nemlig have det i mappen billeder..
Avatar billede -kenner- Nybegynder
04. november 2005 - 16:09 #8
lukket, da jeg har faaet svar i et andet emne
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