Avatar billede the_legend Nybegynder
01. juli 2003 - 12:01 Der er 12 kommentarer og
1 løsning

fejl flere steder

<?php
include("../config.php");
if($_POST['upload']){
    if ($_POST['pic'] == 1) {
        $files = $_FILES['upfil']['name'];
        $dist = $_SERVER["DOCUMENT_ROOT"] . "/login/billeder/";
        move_uploaded_file($_FILES['upfil']['tmp_name'], $dist . $files);
    } else {
        $files = $_POST['old'];
    }
    mysql_query("INSERT INTO `clanen_nyheder` (`id`, `af`, `overskrift`, `dato_tid`, `nyhed`, `file`, `ip`) VALUES ('', '$_POST[af]', '$_POST[overskrift]', '', '$_POST[nyhed]', '$file', ''");
    header("Location: index.php");
}
?>

<html>
<head>
<title>Admin system</title>
</head>
<body>
<p><b>Admin system</b></p>
<form action="<?php echo $_SERVER['PHP_SELF']; ?>" method="post" enctype="multipart/form-data">
<p><input type="text" name="af" size="30" value="forfatter">
<p><input type="text" name="overskrift" size="30" value="overskrift"></p>
<p>Billede:</p>
<p><input type="radio" value="1" checked name="pic"> Upload: <input type="file" name="upfil" size="20"> &nbsp;</p>
<p><input type="radio" value="2" checked name="pic"> Gammelt, skriv sti: <input type="text" name="old" size="30" value="sti"></p>
<p><textarea rows="6" name="nyhed" cols="26">nyhed</textarea></p>
<p><input type="submit" value="tryk nyhed" name="upload"></p>
</form>
<p align='left'><a href='index.php'>&lt;-- tilbage </a></p>
</body>
</html>


jeg har lavet denne kode og der kommer følgende fejl:

Warning: Unable to create 'c:/programmer/easyphp/www/login/billeder/Vind.jpg': No such file or directory in c:\programmer\easyphp\www\csclan\login\admin.php on line 7

Warning: Unable to move 'C:\Programmer\EasyPHP\tmp\php19.tmp' to 'c:/programmer/easyphp/www/login/billeder/Vind.jpg' in c:\programmer\easyphp\www\csclan\login\admin.php on line 7

Warning: Cannot add header information - headers already sent by (output started at c:\programmer\easyphp\www\csclan\config.php:5) in c:\programmer\easyphp\www\csclan\login\admin.php on line 12
Avatar billede schaefner Juniormester
01. juli 2003 - 12:10 #1
har du ændret rettighederne på den mappe du uploader til?
Avatar billede tsfts Nybegynder
01. juli 2003 - 12:10 #2
findes c:/programmer/easyphp/www/login/billeder/ og så er jeg ikke helt sikker på om det skal være / eller \ på et windowssystem.

De to andre warnings er følgefejl fra den første.

/tsfts
Avatar billede the_legend Nybegynder
01. juli 2003 - 12:41 #3
der er fejl i linien dist den er rettet nu. der er fejl her.

Warning: Cannot add header information - headers already sent by (output started at c:\programmer\easyphp\www\csclan\config.php:5) in c:\programmer\easyphp\www\csclan\login\admin.php on line 12

line 12 er     header("Location: index.php");
Avatar billede larslyster Nybegynder
01. juli 2003 - 12:48 #4
Som der står i advarselen, så er du begyndt at sende data før du er kommer til header(). Du har 2 muligheder, enten at lave om så du ikke sender data før header() eller bruge et javascript i stedet for header().

Her er koden til javascript delen:
<script>window.open('index.php','_self')</script>
Avatar billede schaefner Juniormester
01. juli 2003 - 12:50 #5
du udskriver et eller andet i din config-fil. (output started at c:\programmer\easyphp\www\csclan\config.php:5)

Det kan være et linjeskift eller andet.
Avatar billede the_legend Nybegynder
01. juli 2003 - 12:52 #6
har rettet det nu så det øverste ser således ud:

<?php
include("../config.php");
if($_POST['upload']){
    if ($_POST['pic'] == 1) {
        $files = $_FILES['upfil']['name'];
        $dist = $_SERVER["DOCUMENT_ROOT"] . "/csclan/login/billeder/";
        move_uploaded_file($_FILES['upfil']['tmp_name'], $dist . $files);
    } else {
        $files = $_POST['old'];
    }
    mysql_query("INSERT INTO `clanen_nyheder` (`id`, `af`, `overskrift`, `dato_tid`, `nyhed`, `file`, `ip`)
    VALUES ('', '$_POST[af]', '$_POST[overskrift]', '', '$_POST[nyhed]', '$file', ''");

    echo "<script>window.open('../index.php','_self')</script>";
}
?>


men den smækker ikke noget i min database men den uploader filen!
Avatar billede schaefner Juniormester
01. juli 2003 - 12:58 #7
mysql_query("INSERT INTO `clanen_nyheder` (`id`, `af`, `overskrift`, `dato_tid`, `nyhed`, `file`, `ip`)
    VALUES ('', '$_POST[af]', '$_POST[overskrift]', '', '$_POST[nyhed]', '$file', ''") or die(mysql_error());
Avatar billede the_legend Nybegynder
01. juli 2003 - 13:25 #8
FEJL:    Der er en fejl i SQL syntaksen nær '' på linje 2

TabeL:

CREATE TABLE clanen_nyheder (
  id int(11) NOT NULL auto_increment,
  af tinytext NOT NULL,
  overskrift mediumtext NOT NULL,
  dato_tid datetime NOT NULL default '0000-00-00 00:00:00',
  nyhed longtext NOT NULL,
  file varchar(100) NOT NULL default '',
  ip longtext NOT NULL,
  PRIMARY KEY  (id)
) TYPE=MyISAM;
Avatar billede schaefner Juniormester
01. juli 2003 - 13:26 #9
Prøv:

mysql_query("INSERT INTO clanen_nyheder (id,af,overskrift,dato_tid,nyhed, file,ip) VALUES ('','$_POST[af]','$_POST[overskrift]','','$_POST[nyhed]','$file','')") or die(mysql_error());
Avatar billede the_legend Nybegynder
01. juli 2003 - 13:30 #10
den sætter ikke nogen dato_tid i min tabel!
Avatar billede schaefner Juniormester
01. juli 2003 - 13:33 #11
mysql_query("INSERT INTO clanen_nyheder (id,af,overskrift,dato_tid,nyhed, file,ip) VALUES ('','$_POST[af]','$_POST[overskrift]',now(),'$_POST[nyhed]','$file','')") or die(mysql_error());
Avatar billede the_legend Nybegynder
01. juli 2003 - 13:36 #12
det virker kom med et svar.
Avatar billede schaefner Juniormester
01. juli 2003 - 13:37 #13
svar'

mvh. Jesper Sørensen
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