Hvordan ser din <form> ud. Og du skal ikke bruge $_FILES = $HTTP_POST_FILES; Hvis du mener det er nødvendigt at bruge, er din PHP alt for gammel og usikker.
Jeg har altid testet den på firefox og der kom denne "Warning: fread(): supplied argument is not a valid stream resource in......" den hentyder til denne sætning: $data = addslashes(fread(fopen($binFile, "r"), filesize($binFile)));
//Du må kalde den hvad du vil, men du bruger jo $binFile ja men jeg vil tage de oplysninger i $binFile og indsætte dem de steder de høre hjemme. Eller hvordan jeg skal ellers kende forskel på dem når jeg skal indsætte dem i DB? -> måske med $binFile[0],$binFile[1] osv?
Så ved jeg ikke hvad jeg skrive i min insert-statement: $sql = "INSERT INTO Doc_Version "; $sql .= "(Userid, Contexts, File_Name, File_Body, File_Size, File_Type, Doc_Date) "; $sql .= "VALUES ('".$_SESSION['UserID']."','$strDescription', "; $sql .= "'".$binFile_name."','".$data."', '".$binFile_size."', '".$binFile_type."','".date('Y-m-d')."')";
når jeg skal bruge dit eks.: $binFile=$_FILES["binFile"]["name"]; $binFile=$_FILES["binFile"]["tmp_name"]; $binFile=$_FILES["binFile"]["size"]; $binFile=$_FILES["binFile"]["type"];
Okay, det har jeg også fået gjort nu. Jeg får stadig samme fejl på firefox: "Warning: fread(): supplied argument is not a valid stream resource in......"
MEN!! jeg har lige testet den på IE og den virker der!! Hvad mon er galt?
Det gør ingen forskel hvilken browser du bruger, det er blot firefox, der er så venlig at fortælle hvad serveren sieger. Jeg kan ikke udtale mig om hvad der er galt hvis du ikke viser mig hvad du laver.
<?php include 'ConnectDB.php'; $CConn = new ConnectDB; if(isset($_GET['generate']) && !isset($_POST['submit'])){
//generere automatisk et password og brugernavn
$passw= md5($pwd);
echo '<p> Brugernavn : '.$newuser.'</p>';// prints the password echo '<p> Brug denne password: '.$pwd.'</p>';// prints the password echo '<p> Med denne brugernavn og password vil du være bruger af gruppe 1</p>';
echo '<p> Password i krypterede form: '.$passw.'</p>';// prints the password
} // if form has been submitted if(isset($_POST['Submit'])) { echo '<p> submit </p>'; if(isset($generate)){ $resultset = $CConn->query("SELECT Id FROM Person WHERE UserName='".$newuser."'"); if(!mysql_num_rows($resultset)){ $querystr = "INSERT INTO Person(UserName, Password)"; $querystr .= " values ('".$newuser."', '".$passw."')"; $CConn->query($querystr);
$resultsetID = $CConn->query("SELECT MAX(Id) FROM Person");
} else if($info['2']=='9'){ $flag= false; } // if we get here username and password are correct, register session variables and set $_POST['uname'] = stripslashes($_POST['uname']); $_SESSION['Id'] = $info['0']; $_SESSION['UserName'] = $_POST['uname']; $_SESSION['Password'] = $_POST['passwd']; $_SESSION['Level'] = $info['2']; if($info['2']=='0'){ echo'<p>Vent et øjeblik, skal rette username and password</p>'; //bla bla
} else if($info['2']=='1' ||$info['2']=='2'){ echo'<h1>Logged in</h1>'; echo'<p>Welcome back '.$_SESSION['username'].', you are logged in.</p>'; //redirect user to right place } }//END OF IF($flag==true) }//END OF IF($_POST['submit'])
Men det er koden uden alt det der med file-upload. Det er vel den kode vi skal have til at virke, og den jeg gerne vil se. Hvis du da vil have hjælp til det?
Det vil altså sige, at den ikke virker. Det er verdens dårligste undskyldning, at noget virker i IE. Men hvis du er tilfreds med det, skal da ikke blande mig ;)
form-side <form method="POST" action="upload.php" name="Doc_Upload" enctype="multipart/form-data"> <TEXTAREA NAME="txtDescription" ROWS="10" COLS="53"></TEXTAREA></p> <!-- 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 -->
når jeg oupload et word-doc kan jeg med : echo "<br>diverse= ".$binFile_name.$binFile.$binFile_size.$binFile_type; se at den outputtet er forkert: diverse= word.doc0 Warning: fread(): supplied argument is not a valid stream resource in /.automount/idefix.itu.dk/root/export/home2/phong/public_html/add_doc.php on line 160
samt det andet echo, når den skal sætte det ind i database, er inputtet forkert: sql-query : INSERT INTO Doc_Version (PersonId, Change_DS, File_Name, File_Body, File_Size, File_Type, Doc_Date) VALUES ('9', '2',1,'upload igen', 'Word.doc','', '0', '','2004-12-11')
jeg får ikke data,størrelsen og typen med ned i databasen.
Login? Måske. Men du kan også oprette et nyt spørgsmål, så andre kan være med ;) Jeg skal ikke have point, jeg samler ikke på dem. Svar selv, accepter eget svar.
Det med at de 30kB opfører sig forskelligt mellem browsere er fordi nogle browsere respekterer din: <input type="hidden" name="MAX_FILE_SIZE" value="30000" />, og andre ikke gør.
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.