login  Naam:   Wachtwoord: 
Registreer je!
 Forum

file upload prob

Offline gnorf - 10/07/2005 19:12
Avatar van gnorfNieuw lid ik ben een pagina aan het maken waarmee je foto's kunt uploaden.
Je maakt dus een map aan en uploaden maar.
Maar als ik voor de 2de keer die map gebruik (maar andere file),
dan doet hij het niet meer.
Maar het werkt niet:

if(!is_dir($abspath))
{
mkdir($abspath,0777);
}
else{

mysql_query("INSERT INTO pics (name, directory, path) VALUES
('".$name."', '".$directory."', '".$abspath."')")
or die (mysql_error());

//het bestand verplaatsten naar de juiste map op de server
move_uploaded_file($_FILES['bestand']['tmp_name'], $abspath.$name);
//berichtje om te laten zien dat het bestand is opgeslagen
echo $abspath.$name;
echo $_FILES['bestand'][tmp_name];
echo "<br>Het bestand is opgeslagen";
}

Dank bij voorbaat!
Gnorf

12 antwoorden

Gesponsorde links
Offline SlashDotCom - 10/07/2005 19:14
Avatar van SlashDotCom Lid gebruik eens de code tags
Offline gnorf - 10/07/2005 19:16
Avatar van gnorf Nieuw lid
  1. if(!is_dir($abspath))
  2. {
  3. mkdir($abspath,0777);
  4. }
  5. else{
  6.  
  7. mysql_query("INSERT INTO pics (name, directory, path) VALUES
  8. ('".$name."', '".$directory."', '".$abspath."')")
  9. or die (mysql_error());
  10.  
  11. //het bestand verplaatsten naar de juiste map op de server
  12. move_uploaded_file($_FILES['bestand']['tmp_name'], $abspath.$name);
  13. //berichtje om te laten zien dat het bestand is opgeslagen
  14. echo $abspath.$name;
  15. echo $_FILES['bestand'][tmp_name];
  16. echo "<br>Het bestand is opgeslagen";
  17. }
Offline Zerato0 - 10/07/2005 20:31
Avatar van Zerato0 Onbekend volgens mij moet jij maar is php en mysql leren want volgens mij klopt er niks aan:s
Offline Gerard - 10/07/2005 20:49
Avatar van Gerard Ouwe rakker ik mis hele stukken script want ik zou graag willen weten hoe jij aan die variabelen komt
Offline cracker - 11/07/2005 05:33
Avatar van cracker Onbekend gnorf verricht wonderen denk ik...
een mySQL query uitvoeren als er geen verbinding tot stand gebracht wordt,... 
en dan 2 variabelen na mekaar plaatsen zonder een punt ertussen...
Hint: als er op php.net ofzo staat (...[tmp_name]...) betekenen die vierkante haken dat dit optioneel is.
Deze behoren niet tot het script !
Offline Thomas - 11/07/2005 07:58 (laatste wijziging 11/07/2005 07:59)
Avatar van Thomas Moderator "en dan 2 variabelen na mekaar plaatsen zonder een punt ertussen..."

Dat kan anders prima hoor...
EDIT: Ow wacht - verkeerd gelezen, waar gebeurt dat dan ?

"Hint: als er op php.net ofzo staat (...[tmp_name]...) betekenen die vierkante haken dat dit optioneel is."

Euh, nope, dat klopt ook - zo zitten file-uploads in elkaar... Alleen moet tmp_name wel tussen quotes.

Verder missen we nog een groot stuk van het script, die wellicht de fout beter verklaart. We hebben het hele (of iig een groter stuk script) nodig.
Offline cracker - 11/07/2005 08:20 (laatste wijziging 11/07/2005 08:21)
Avatar van cracker Onbekend FagorN, het is hier ook geldig maar over de php.net heb ik gelijk ;)

btw, ik moet eens wat meer van achter mijn computer komen...
Ik lees niet goed meer en verlies mijn PHP-kennis 
Offline gnorf - 11/07/2005 13:44
Avatar van gnorf Nieuw lid en, ja, nog een keer:

  1. if(!is_dir($abspath))
  2. {
  3. mkdir($abspath,0777);
  4. }
  5. else{
  6.  
  7. mysql_query("INSERT INTO pics (name, directory, path) VALUES
  8. ('".$name."', '".$directory."', '".$abspath."')")
  9.  
  10. //het bestand verplaatsten naar de juiste map op de server
  11. move_uploaded_file($_FILES['bestand']['tmp_name'], $abspath.$name);
  12. //berichtje om te laten zien dat het bestand is opgeslagen
  13. echo $abspath.$name;
  14. echo $_FILES['bestand'][tmp_name];
  15. echo "<br>Het bestand is opgeslagen";
  16. }


Niet alle code heb ik hier neergezet, maar connectie met DB enzo is al gemaakt. Ik ken heus wel iets van php hoor...
$abspath is gewoon een absoluut path.
Het gaat er hier gewoon om, dat je kunt ingeven in welke directory (die nog niet bestaat, maar die je dus invoert) je een bestand gaat uploaden.
Thx tot nu toe dudes!
Offline gnorf - 11/07/2005 13:57 (laatste wijziging 11/07/2005 16:45)
Avatar van gnorf Nieuw lid
  1. <?php
  2. if (isset ($_SESSION['user'])
  3. {
  4. $db = mysql_connect('localhost','root','****');
  5.  
  6. if(isset($_FILES['bestand'])) {
  7. $name = $_FILES['bestand']['name'];
  8. $directory = $_POST['directory']."/";
  9. $path = "/var/www/html/nieuw/media/pics/";
  10. $abspath = $path.$directory;
  11. $bufvalue = $_POST['directory'];
  12.  
  13. //directory maken + path opslaan in DB
  14. if(!is_dir($abspath))
  15. {
  16. mkdir($abspath,0777);
  17. }
  18. else{
  19.  
  20. mysql_query("INSERT INTO pics (name, directory, path) VALUES
  21. ('".$name."', '".$directory."', '".$abspath."')")
  22. or die (mysql_error());
  23.  
  24. //het bestand verplaatsten naar de juiste map op de server
  25. move_uploaded_file($_FILES['bestand']['tmp_name'], $abspath.$name);
  26. //berichtje om te laten zien dat het bestand is opgeslagen
  27. echo $abspath.$name;
  28. echo $_FILES['bestand'][tmp_name];
  29. echo "<br>Het bestand is opgeslagen";
  30. }
  31. else {
  32. //er is geen bestand geselecteerd
  33. echo "Selecteer een bestand";
  34. }
  35. }
  36.  
  37. $result = mysql_query("SELECT * FROM pics");
  38. $num=mysql_numrows($result);
  39.  
  40. $i=0;
  41. //stuff tonen op scherm
  42. echo $num . " entries in table pics<br>";
  43. echo "<hr>";
  44. echo "<br><b>Laatste entry:</b><br>";
  45. $name = mysql_result($result,$num-1,"name");
  46. $directory=mysql_result($result,$num-1,"directory");
  47. $path=mysql_result($result,$num-1,"path");
  48.  
  49.  
  50. echo "<b>name:</b> ".$name . "<br>";
  51. echo "<b>directory:</b>".$directory . "<br>";
  52. echo "<b>path:</b>".$path . "<br>";
  53. echo "<hr>";
  54.  
  55. echo "<b>add entry</b><br>";
  56. ?>
  57. <form name="news" method="post" action="pics.php" ENCTYPE="multipart/form-data" >
  58. <table width="100%" border="0">
  59. <tr>
  60. <td width="100">Directory (yyyymmdd):</td>
  61. <td><input type="text" name="directory" value ="<? echo $bufvalue;?>"></td>
  62. </tr>
  63. <tr>
  64. <td width="100">Choose file:</td>
  65. <td><INPUT TYPE="file" NAME="bestand"></td>
  66. </tr>
  67. </table>
  68. <input type="submit" name="submit" value="submit query">
  69. </form>
  70. <? }
  71. else{ echo "FOUT"; }?>
Offline Duikboot - 11/07/2005 16:43
Avatar van Duikboot Grafische gevorderde Zet bovenaan nog ff de <? ?> tags, dan word het php-gedeelte ook gehighlight, zoekt makkelijker 
Offline gnorf - 11/07/2005 18:04
Avatar van gnorf Nieuw lid
  1. <? ?>
  2. <?
  3. if (isset ($_SESSION['user'])
  4. {
  5. $db = mysql_connect('localhost','root','****');
  6.  
  7. if(isset($_FILES['bestand'])) {
  8. $name = $_FILES['bestand']['name'];
  9. $directory = $_POST['directory']."/";
  10. $path = "/var/www/html/nieuw/media/pics/";
  11. $abspath = $path.$directory;
  12. $bufvalue = $_POST['directory'];
  13.  
  14. //directory maken + path opslaan in DB
  15. if(!is_dir($abspath))
  16. {
  17. mkdir($abspath,0777);
  18. }
  19. else{
  20.  
  21. mysql_query("INSERT INTO pics (name, directory, path) VALUES
  22. ('".$name."', '".$directory."', '".$abspath."')")
  23. or die (mysql_error());
  24.  
  25. //het bestand verplaatsten naar de juiste map op de server
  26. move_uploaded_file($_FILES['bestand']['tmp_name'], $abspath.$name);
  27. //berichtje om te laten zien dat het bestand is opgeslagen
  28. echo $abspath.$name;
  29. echo $_FILES['bestand'][tmp_name];
  30. echo "<br>Het bestand is opgeslagen";
  31. }
  32. else {
  33. //er is geen bestand geselecteerd
  34. echo "Selecteer een bestand";
  35. }
  36. }
  37.  
  38. $result = mysql_query("SELECT * FROM pics");
  39. $num=mysql_numrows($result);
  40.  
  41. $i=0;
  42. //stuff tonen op scherm
  43. echo $num . " entries in table pics<br>";
  44. echo "<hr>";
  45. echo "<br><b>Laatste entry:</b><br>";
  46. $name = mysql_result($result,$num-1,"name");
  47. $directory=mysql_result($result,$num-1,"directory");
  48. $path=mysql_result($result,$num-1,"path");
  49.  
  50.  
  51. echo "<b>name:</b> ".$name . "<br>";
  52. echo "<b>directory:</b>".$directory . "<br>";
  53. echo "<b>path:</b>".$path . "<br>";
  54. echo "<hr>";
  55.  
  56. echo "<b>add entry</b><br>";
  57. ?>
  58. <form name="news" method="post" action="pics.php" ENCTYPE="multipart/form-data" >
  59. <table width="100%" border="0">
  60. <tr>
  61. <td width="100">Directory (yyyymmdd):</td>
  62. <td><input type="text" name="directory" value ="<? echo $bufvalue;?>"></td>
  63. </tr>
  64. <tr>
  65. <td width="100">Choose file:</td>
  66. <td><INPUT TYPE="file" NAME="bestand"></td>
  67. </tr>
  68. </table>
  69. <input type="submit" name="submit" value="submit query">
  70. </form>
  71. <? }
  72. else{ echo "FOUT"; }?>
Offline gnorf - 11/07/2005 18:56
Avatar van gnorf Nieuw lid prob opgelost! ->haakje vergeten in eerste IF 
toch bedankt
Gesponsorde links
Dit onderwerp is gesloten.
Actieve forumberichten
© 2002-2024 Sitemasters.be - Regels - Laadtijd: 0.234s