php.de

Zurück   php.de > Webentwicklung > PHP Einsteiger > PHP Tipps 2009

 
 
LinkBack Themen-Optionen Thema bewerten
Alt 06.10.2009, 16:44  
Benutzer
 
Registriert seit: 13.06.2009
Beiträge: 41
PHP-Kenntnisse:
Anfänger
kreativepassion befindet sich auf einem aufstrebenden Ast
Standard Daten auf DB Uploaden

So ich bin gerade dabei einen Upload Funktion zu basteln doch leider harkt es ein wenig. Ich stelle mal die Datein rein und die Fehlermeldung die ich immerzu ausgespuckt bekomme...

Kurz zum Ziel: Ich möchte Bilder in einen Ordner hochladen der im selben Verzeichnis wie das Formular und das Skript liegt. Momentan heißt der Ordnern noch 'upload'.

Das Formular:

Code:
<form action="upload.php" method="post" enctype="multipart/form-data"> 
<table id="t1">
<td class="td"><b>Datei Uploden
<tr>
<td>
<input type="file" name="file" class="td6" cols="85" rows="14">
<tr>
<td >
<input class="td2" type="submit" name="Submit" value=" Hochladen " >
</table>
</form>

Das Skript:

PHP-Code:
<?php 
   error_reporting
(E_ALL); 
   
include(
"db.php"); 

$cnt count($_FILES['file']['name']);

for(
$i=0$i <= ($cnt-1); $i++)
{
 
$tmp_filename $_FILES['file']['tmp_name'][$i];
 
$filename $_FILES['file']['name'][$i];
 
$size $_FILES['file']['size'][$i];
 
$type $_FILES['file']['type'][$i];

 if( 
copy($tmp_filename"D:/Webdav/test1/" $filename) )

 {
  
$content "Upload erfolgreich<br>
              Dateigröße: $size<br>
              Dateityp: $type "
;
 }
 else 
 {
  
$content "Kein Upload möglich; Ursache: " 
             
$_FILES['file']['error'][$i];
 }
 echo 
$content;
}

?>
Die Fehlermeldung:

Warning: copy() [function.copy]: open_basedir restriction in effect. File(/) is not within the allowed path(s): (/users/ventana/temp:/users/ventana/www) in /users/ventana/www/GestuetVentana/Admin/upload.php on line 15
Kein Upload möglich; Ursache:


Kann mir jemand weiterhelfen und mir erklären was falsch ist? Ich steig da noch nich so dran lang, auch google oder foren konnten mir net helfen im gegenteil es gibt so viele versionen das ich momentan einfach nur nen bissl verwirrt bin.

vielen Dank
lg krea
kreativepassion ist offline  
Sponsor Mitteilung
PHP Code Flüsterer

Registriert seit: 21.08.2005
Beiträge: 4682
PHP-Kenntnisse:
Fortgeschritten

Alt 06.10.2009, 16:45  
Erfahrener Benutzer
 
Registriert seit: 25.09.2009
Beiträge: 2.115
PHP-Kenntnisse:
Fortgeschritten
BlackScorp wird schon bald berühmt werdenBlackScorp wird schon bald berühmt werden
Standard

move_uploaded_file

copy kopiert eine vorhandene datei auf dem server direkt. man kann mit php nicht von der festplatte auf server kopieren
__________________
Mein kleines Projekt
-Cruel Online-
5 von 3 Leuten können kein Bruchrechnen
BlackScorp ist offline  
Alt 06.10.2009, 17:54  
Erfahrener Benutzer
 
Registriert seit: 07.06.2008
Beiträge: 992
PHP-Kenntnisse:
Fortgeschritten
Frank befindet sich auf einem aufstrebenden Ast
Frank eine Nachricht über ICQ schicken Frank eine Nachricht über MSN schicken Frank eine Nachricht über Yahoo! schicken
Standard

@BlackScorp: das stimmt so nicht ganz.

Ja, copy(source, destination) kopiert eine Datei auf dem Server von source nach destination. Wenn man das Verfahren an sich betrachtet, dann macht move_uploaded_file(source, destination) exakt das gleiche.

Weder copy() noch move_uploaded_file() können Dateien von der Festplatte des Benutzers auf den Server hochladen.

Das Hochladen ist bereits passiert mit dem Absenden des Formulares, und passiert NICHT beim Aufruf der Funktion copy() oder move_uploaded_file().

Der einzige Unterschied zwischen copy() und move_uploaded_file() besteht in ihren Zugriffsrechten. Beim Absenden des Formulares werden die Dateie sofort auf dem Server gespeichert (auch, wenn danach gar kein PHP folgt). Entscheident ist hier der Speicherort. Die hochgeladenen Dateien liegen im Ordner für temporäre Dateien.

In der Theorie kannst du nun mit copy() die Datei aus dem Ordner für temporäre Dateien in einen anderen Ordner kopieren. Das Problem ist hierbei, das der Ordner für temporäre Dateien zu meist außerhalb des Pfades liegt, auf den PHP zugreifen darf.

Der Unterschied zwischen den beiden Funktionen liegt nun darin, dass move_uploaded_file trotzdem auf den besagten Ordner zugreifen darf. Würde man PHP entsprechend umkonfigurieren, würde es auch mit copy() funktionieren.
__________________
Frank ist offline  
Alt 06.10.2009, 19:06  
Benutzer
 
Registriert seit: 13.06.2009
Beiträge: 41
PHP-Kenntnisse:
Anfänger
kreativepassion befindet sich auf einem aufstrebenden Ast
Standard

würde es euch was ausmachen wenn ihr mir evt ein skript gebt was eurer meinung nach funktionieren könnte ?

danke Frank für diese tolle erklärung jetz bin ich wieder etwas schlauer doch leider scheitert es an der umsetzung , da ich die zusammenhänge von meinem skript auch nich so ganz verstehe...
wo finde ich den Ordner mit den temörären datein auf meinem PC ?
kreativepassion ist offline  
 


Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an
Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Website in XML-Format öffnen und Daten in DB schreiben...aber nur wie ? Oli Krause PHP Tipps 2009 11 22.03.2009 12:36
Registrierte User sollen ihre Daten ändern können 54ch4 PHP Tipps 2009 17 14.03.2009 14:29
Scriptsuche Suche Script zum einpflegen von daten... derTorsten1909 Scriptbörse 17 10.01.2009 18:22
Problem mit Formular, Daten an datenbank senden Aurec PHP Tipps 2008 11 20.11.2008 18:17
Mehrere Arrays unterschiedlicher Größe kombinieren querfisch PHP Tipps 2007 9 31.03.2007 21:34
Session Frage - gleiches Formular 2 mal alle Daten behalten NetLook PHP Tipps 2007 1 21.11.2005 18:42
speicherung der daten bei stromausfall? MrCavity Datenbanken 2 19.11.2005 17:39
[Erledigt] sql daten für einen kunden auslesen/ändern im Formular PHP Tipps 2005-2 3 12.10.2005 08:36
[Erledigt] Daten aus mehreren Tabellen holen Datenbanken 0 19.09.2005 17:14
Daten auslesen und ändern Datenbanken 2 17.09.2005 19:28
Daten eintragen und auslesen Rettungsdackel Datenbanken 0 14.09.2005 16:29
Daten in Datenbank ändern PHP Tipps 2005 3 27.01.2005 14:40
Daten übergeben kampfnickel PHP Tipps 2005 4 05.01.2005 14:12
[Erledigt] MySQL-DB gibt keine Daten zurück!!! Datenbanken 4 21.12.2004 21:00
array_push nur in begrenzter Anzahl ausführen ? PHP Tipps 2004 2 07.09.2004 09:05

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
move_uploaded_file() datei kopieren, move_uploaded_file festplatte hochladen, http://www.php.de/php-einsteiger/59707-daten-auf-db-uploaden.html, kann bei der db keine dateien hochladen, daten uploaden, benutzer sollen daten hochladen können, copy($tmp_filename, \\ . $filename);, uploden.com, datei uploden

Alle Zeitangaben in WEZ +2. Es ist jetzt 19:58 Uhr.




Powered by vBulletin® Version 3.7.2 (Deutsch)
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0
Aprilia-Forum, Aquaristik-Forum, Liebeskummer-Forum, Zierfisch-Forum, Geizkragen-Forum