Avatar billede marzman Nybegynder
20. juli 2005 - 16:42 Der er 4 kommentarer og
1 løsning

upload som ikke lige vil fungere!

Hej Eksperten

Jeg sidder med et php script til min nyheds side, jeg vil lave det sådan at jeg skriver en overskrift, nyheden og uploader en fil samtidig.

Jeg har lavet scriptet men problemet er at jeg ikke kan få den til at uploade filen og deres lægge det i databasen

Jeg har min kode således:




<html>

<head>
<meta http-equiv="refresh" content="10; url=http://marzman.dk/admin/nyhed.php">

</head>

<body>

gem_yhed.php
<?php

include("/home/virtual/marzman.dk/public_html/admin/upload.php");

include("/home/virtual/marzman.dk/public_html/admin/config.php");


$dato = date("d F Y - H:i");
$navn = $_REQUEST["navn"];
$nyhed = $_REQUEST["nyhed"];

$db=mysql_connect("$dbhost", "$dbuser", "$dbpass");
mysql_select_db("$database", $db );

mysql_query("INSERT INTO news (id, header, news, dato, image)" . "values ('',
'$navn', '$nyhed', '$dato', '$image')") or die ("fejl ved indsætning: ".mysql_error());
close();


?>

</body></html>

------------------------
upload.php - min upload del:
<?php
// In PHP versions earlier than 4.1.0, $HTTP_POST_FILES should be used instead
// of $_FILES.

$uploaddir = '/home/virtual/marzman.dk/public_html/news/images/';
$uploadfile = $uploaddir . basename($_FILES['userfile']['name']);

echo '<pre>';
if (move_uploaded_file($_FILES['userfile']['tmp_name'], $uploadfile)) {
  echo "File is valid, and was successfully uploaded (UPLOADED).\n";
} else {
  echo "Possible file upload attack! (NOT UPLOADED)\n";
}

$image = $_FILES['userfile']['name'];


?>

---------------------
nyhed.php -viser nyhederne samt send info til gem_nyhed.php
<?php
include("/home/virtual/marzman.dk/public_html/admin/config.php");
echo "<?xml version=\"1.0\" encoding=\"iso-8859-1\"?>";
?>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "xhtml11.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">
<head>

<meta http-equiv="content-type" content="text/html; charset=ISO-8859-1" />
<title>marZman.dk - PHP source hjemmeside | admin</title>
<link rel="stylesheet" href="/style.css" type="text/css" media="all" />

</head>

<body>

<div align="center">


<form enctype="multipart/form-data" action="upload.php" method="POST">
Titel:

<input type="text" name="navn" maxlength="25" />



    <!-- MAX_FILE_SIZE must precede the file input field -->

    <input type="hidden" name="MAX_FILE_SIZE" value="30000" />


    <!-- Name of input element determines name in $_FILES array -->


    Send this file: <input name="userfile" type="file" />

<br />

nyheden:

<textarea rows="5" name="nyhed" cols="40"></textarea>


<input type="submit" value="Skriv nyhed">
</form>


</div>


<?php


$db=mysql_connect("$dbhost", "$dbuser", "$dbpass");
mysql_select_db("$database", $db );

// Hent først data ud
$resultat = mysql_query("select * from news order by id desc");
$sql_rows = mysql_num_rows($resultat);
while($raekke = mysql_fetch_array($resultat))
{
$getid = $raekke['id'];
$dato = $raekke['dato'];
$navn = $raekke['header'];
$nyhed = nl2br($raekke['news']);
$file = $raekke['image'];
   
  echo '<table style="border: 0px; width: 100%;"><tr><td valign="top"><img alt="';
  print "$file";
  echo '" src="/news/images/';
  print "$file";
  echo '" style="border: 1px solid #999999; margin: 10px 5px 2px 5px; float: left; width: 250px;" /><span style="font-size: 10px; font-weight: bold;">[';
  print "$dato";
  echo '] </span><p class="news-header">';
  print "$navn";
  echo  '</p><span style="font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px;">';
  print "$nyhed";
  print '</span></td></tr><td><a href="edit_nyhed.php?id=';
  print "$getid";
  echo  '">RET nyhed</a> | <a href="delete_nyhed.php?id=';
  print "$getid";
  echo  '">SLET nyheden</a></td></tr></table><br />';
}

?>
<br /><br />
<?
echo "Antal nyheder i databasen: ";
echo "$sql_rows";

?>

</body>

</html>

-----------
Min config.php indeholder kun variabler til db connect.

hvad er galt skittet vil ikke lige uploade filen!
Avatar billede fixxxer Nybegynder
20. juli 2005 - 16:49 #1
Den mappe, filen skal flyttes til, skal have 777 rettigheder..

$uploaddir = '/home/virtual/marzman.dk/public_html/news/images/';
chmod($uploaddir, 0777);
$uploadfile = $uploaddir . basename($_FILES['userfile']['name']);
Avatar billede marzman Nybegynder
20. juli 2005 - 17:00 #2
danm du fair mester.. den virker jo ny... takker
Avatar billede fixxxer Nybegynder
20. juli 2005 - 17:04 #3
Hehe.. så er jeg også blevet kaldt det med !-)

Velbekommen, og tak for point..
Avatar billede fixxxer Nybegynder
20. juli 2005 - 17:06 #4
Du behøver ikke længere linjen

chmod($uploaddir, 0777);

efter at den har kørt een gang.. Du kan evt. udkommentere den hvis du skal upload til andre mapper i fremtiden, og vil have et "eksempel".
Avatar billede marzman Nybegynder
20. juli 2005 - 17:18 #5
ok... fint
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