Avatar billede dantheman Nybegynder
20. november 2003 - 15:49 Der er 13 kommentarer

billeddatabase med automatisk opdatering

Hej
jeg vil gerne lave en lille "database" jeg kunen godt tænke mig det sådan at jeg bare kan uploade billeder til en mappe på serveren og så skal siden selv kunne finde ud af at sætte de her billeder ind på siden og hvis man trykker på billedet skal det downloades... kan det lade sig gøre i PHP. jeg vil lige sige at jeg kender INTET til PHP så kan jeg få en komplet kode jeg bare kan loade op eller finde den et sted på nettet???
Avatar billede bjarniolsen Nybegynder
20. november 2003 - 15:57 #1
Hvad med det her:

<?php
// kontakt til database:
$DBhost = "DIN HOST";
$DBuser = "DIT BRUGERNAVN";
$DBpass = "DIT PASSWORD";
$DBName = "NAVNET PÅ DATABASEN";
@mysql_connect($DBhost,$DBuser,$DBpass) or die("Kunne ikke oprette forbindelse til database");

@mysql_select_db("$DBName") or die("Kunne ikke oprette forbindelse til databasen \"$DBName\"");
?>

/*fil upload start*/
$konfiguration["upload_bibliotek"] = "upload";
$konfiguration["max_stoerrelse"] = "100";

/* Hvor flytter vi fra og til */
if($bill_sti != ""){
$fra = $_FILES["bill_sti"]["tmp_name"];
$til = "../" .$konfiguration["upload_bibliotek"] . "/" . $_FILES["bill_sti"]["name"];

/* Accepterer vi filens stoerrelse?
$fil_stoerrelse = filesize($fra)/1024;
if($fil_stoerrelse > $konfiguration["max_stoerrelse"]) {
  die("Desværre - filen er for stor. Jeg accepterer kun " .
      $konfiguration["max_stoerrelse"] . "kb, og din fil fylder " .
      ceil($fil_stoerrelse, 1) . " kb");
}*/

/* Saa koerer vi */
if(function_exists("move_uploaded_file")) {
  move_uploaded_file($fra, $til);
} else {
  copy($fra, $til);
}
$til = "STI TIL DIN UPLOAD MAPPE/" . $_FILES["bill_sti"]["name"];
}
/*fil upload slut*/

mysql_query("INSERT INTO din tabel (bill_sti, id)
  VALUES('$til', '$id')");

$foresp = mysql_query("SELECT bill_sti FROM din tabel");
while($data = mysql_fetch_row($foresp)){
echo $data[0];
echo $data[1];
}
?>
Avatar billede bjarniolsen Nybegynder
20. november 2003 - 15:57 #2
Hvad med det her:

<?php
// kontakt til database:
$DBhost = "DIN HOST";
$DBuser = "DIT BRUGERNAVN";
$DBpass = "DIT PASSWORD";
$DBName = "NAVNET PÅ DATABASEN";
@mysql_connect($DBhost,$DBuser,$DBpass) or die("Kunne ikke oprette forbindelse til database");

@mysql_select_db("$DBName") or die("Kunne ikke oprette forbindelse til databasen \"$DBName\"");
?>

/*fil upload start*/
$konfiguration["upload_bibliotek"] = "upload";
$konfiguration["max_stoerrelse"] = "100";

/* Hvor flytter vi fra og til */
if($bill_sti != ""){
$fra = $_FILES["bill_sti"]["tmp_name"];
$til = "../" .$konfiguration["upload_bibliotek"] . "/" . $_FILES["bill_sti"]["name"];

/* Accepterer vi filens stoerrelse?
$fil_stoerrelse = filesize($fra)/1024;
if($fil_stoerrelse > $konfiguration["max_stoerrelse"]) {
  die("Desværre - filen er for stor. Jeg accepterer kun " .
      $konfiguration["max_stoerrelse"] . "kb, og din fil fylder " .
      ceil($fil_stoerrelse, 1) . " kb");
}*/

/* Saa koerer vi */
if(function_exists("move_uploaded_file")) {
  move_uploaded_file($fra, $til);
} else {
  copy($fra, $til);
}
$til = "STI TIL DIN UPLOAD MAPPE/" . $_FILES["bill_sti"]["name"];
}
/*fil upload slut*/

mysql_query("INSERT INTO din tabel (bill_sti, id)
  VALUES('$til', '$id')");

$foresp = mysql_query("SELECT bill_sti FROM din tabel");
while($data = mysql_fetch_row($foresp)){
echo $data[0];
echo $data[1];
}
?>
Avatar billede bjarniolsen Nybegynder
20. november 2003 - 16:00 #3
rettelse til sidst i scriptet:

mysql_query("INSERT INTO din tabel (bill_sti)
  VALUES('$til')");

$foresp = mysql_query("SELECT bill_sti FROM din tabel");
while($data = mysql_fetch_row($foresp)){
echo $data[0];
}

drop "id"
Avatar billede dantheman Nybegynder
20. november 2003 - 16:05 #4
hvad skal jeg gøre med den?
skal jeg bare skrive det i notepad og uploade det eller hvad gør jeg????
Avatar billede bjarniolsen Nybegynder
20. november 2003 - 16:11 #5
Du skal oprette en tabel i din database. Den kunne f.eks hedde "billeder".
Giv den to rækker: bill_sti og id (hvor id er primærnøjle).

Så åbner du ovenstående script med f.eks. Notepad, og retter database oplysningerne i starten, så de passer med dit webhotels.
Derefter gemmer du scriptet som f.eks. billedupload.php, og smider det over på dit webhotel. Husk at lave en mappe til dine billeder (det er denne mappe som "bill_sti" refererer til.
Avatar billede bjarniolsen Nybegynder
20. november 2003 - 16:16 #6
Jeg har i starten af scriptet kaldt min billedmappe for "upload":

/*fil upload start*/
$konfiguration["upload_bibliotek"] = "upload"; // <-- billedmappen
$konfiguration["max_stoerrelse"] = "100";
Avatar billede bjarniolsen Nybegynder
20. november 2003 - 16:32 #7
Der er en lille skrive fejl i starten:

<?php
// kontakt til database:
$DBhost = "DIN HOST";
$DBuser = "DIT BRUGERNAVN";
$DBpass = "DIT PASSWORD";
$DBName = "NAVNET PÅ DATABASEN";
@mysql_connect($DBhost,$DBuser,$DBpass) or die("Kunne ikke oprette forbindelse til database");

@mysql_select_db("$DBName") or die("Kunne ikke oprette forbindelse til databasen \"$DBName\"");
?> *****FJERN DENNE !!!!!!!!
Avatar billede dantheman Nybegynder
20. november 2003 - 20:16 #8
Ja du må undskylde jeg er så umulig, men jeg kender intet til databaser eller php, det var derfor min forespørgsel var om man bare kunne få en kode eller noget man bare kunne uploade.

kan man ikke i php lave sådan at den tjekker i en mappe og sætter alle de billeder ind der er i den mappe?
Som sagt jeg kender INTET til det
Avatar billede dantheman Nybegynder
20. november 2003 - 20:32 #9
Den behøver jo ikke have en upload funktion hvis det er besværligt, det kan jo gøres via ftp
Avatar billede bjarniolsen Nybegynder
20. november 2003 - 20:43 #10
Jo sikkert, men den kan jeg ikke greje lige nu.
Avatar billede dantheman Nybegynder
20. november 2003 - 20:51 #11
kan jeg heller ikke skaffe en færdiglavet kode (database) eller hvad det kræver så jeg bare skal uploade det til min server?
Avatar billede bjarniolsen Nybegynder
20. november 2003 - 21:07 #12
Jo, men du kommer nok ikke udenom at modificere det en smule.

Jeg ved godt at det er røvsygt - og nok lidt uoverskueligt - men du kan prøve at kigge her:
http://www.hotscripts.com/PHP/Scripts_and_Programs/Image_Galleries/index.html
og se om der er et af dem du kan bruge.
Held og lykke.
Avatar billede dantheman Nybegynder
21. november 2003 - 11:48 #13
er dette måske noget jeg kan bruge??? ejg fandt koden på nettet men fatter jo ikek hvd det betyder:


Javagalleriet.dk
NOTE: Kopier alt text og sæt det ind i dit html dokument.
Slet mine < ? php include filer header ,footer og back.php3.? > Så slipper du for fejl i dit html dokument.
Alle mine.txt filer skal "chmod 777", når vi chmodder filer, giver vi serveren ret til at skrive til filerne. Se her
Source of: /php/coder/icon.php
<?php include( "../header.php"); ?>
<h1>Javagallariet.dk</h1>
<table width="100%" cellpadding="2" cellspacing="2"border="0">
<tr>
    <td width="100%"><b>Et dir af Icon i størlse 16*16</b></td>
</tr>
</table><br>
<?php
// THUMBNAIL DIRECTORY
$path =  "../../image/size16";
// IMAGE DIRECTORY
$path2 =  "../../image/size16";
// TABLE COLUMNS
$clm =  "10";
// THUMBNAIL WIDTH
$t_w =  "32";
// THUMBNAIL HEIGHT
$t_h =  "32";
$count = -1;
$break = $clm;
echo  "<table width=\"100%\" border=1 cellpadding=0 cellspacing=0><tr>";
$d = dir( "$path");
while($entry=$d->read()) {
if(eregi( ".jpg|.jpeg|.gif|.bmp|.png", $entry)):
ClearStatCache();
$size = GetImageSize( "$path2/$entry");
$width = $size[0] + 10;
$height = $size[1] + 20;
$file_size=fileSize( "$path2/$entry");
$file_size = round($file_size / 1000) .  "k";
echo  "<td><a href=\"#\" onmouseover=\"window.status='$entry $size[0]x$size[1]';return true;\" onmouseout=\"window.status=''; return true\" onclick=\"window.open('$path2/$entry','pix$count','width=$width,height=$height,directories=no,location=no,menubar=no,scrollbars=no,status=yes,toolbar=no,resizable=no,top=10,left=10,screenX=10,screenY=10');return false\"><img src=$path/";
echo $entry. " border=0 alt=$count width=$t_w height=$t_h></a><br><center><font size=2>$file_size</font></center></td>\n";
if ($count == $break) {             
echo  "</tr>\n<tr>\n";           
$break = $count + $clm;           
}           
endif;   
$count++;
}
$d->close();?>
</tr></table>
<br>
<?php include( "../back.php"); ?>
<?php include( "../footer.php"); ?>
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