Halloechen,
hab' mir nun einen kleinen File-Upload realisiert.
In einem Formular kann eine Datei ausgewahlt werden, die irgendwo auf dem heimischen PC schlummert (z.B. C:/test.txt). Im naechsten Schritt wird dieser Dateiname inkl Pfadangabe an das dann folgende PHP-Script uebergeben.
Nun das kleine Problemchen:
Wenn das Script auf dem Server ausgefuehrt wird, dann weiss der Server natuerlich nicht, wo C:/test.txt ist und macht dann natuerlich nichts, weil er die Datei nicht findet. Wie kann ich oder kann ich die komplette Datei uebergeben?
Das Script fuehrt die while-Schleife natuerlich gar nicht aus, weil fgets() nix liefert.
Vielen Dank fuer jeglichen Feedback.
hab' mir nun einen kleinen File-Upload realisiert.
In einem Formular kann eine Datei ausgewahlt werden, die irgendwo auf dem heimischen PC schlummert (z.B. C:/test.txt). Im naechsten Schritt wird dieser Dateiname inkl Pfadangabe an das dann folgende PHP-Script uebergeben.
Nun das kleine Problemchen:
Wenn das Script auf dem Server ausgefuehrt wird, dann weiss der Server natuerlich nicht, wo C:/test.txt ist und macht dann natuerlich nichts, weil er die Datei nicht findet. Wie kann ich oder kann ich die komplette Datei uebergeben?
Das Script fuehrt die while-Schleife natuerlich gar nicht aus, weil fgets() nix liefert.
Vielen Dank fuer jeglichen Feedback.
PHP-Code:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>Upload results!</title>
<meta http-equiv="content-type" content="text/html; charset=UTF-8" />
</head>
<body>
<form method="post" >
<p>Choose a file:<br />
<input name="Datei" type="file" size="80" maxlength="100000" accept="txt">
</p>
<input type="Submit" value="Click to upload!" name="Res_Filter">
</form>
<?php
if(($_SERVER['REQUEST_METHOD'] == 'POST') and (isset($_POST['Datei'])) ){
$file = $_POST["Datei"];
if ($file==""){
echo "Please choose file before clicking somewhere, where you shouldn't!<br>";
}
else{
//Verbindung aufbauen
$link = mysql_connect('localhost', 'uploader_results', 'pwd')
or die('Keine Verbindung möglich: ' . mysql_error());
echo 'Database connected<br />';
mysql_select_db('aks_results') or die('Auswahl der Datenbank fehlgeschlagen');
//Zeichensatz fuer Verbindung setzen
mysql_query("SET NAMES 'utf8'");
//Datei oeffnen
echo "This file will be uploaded: ".$file."<br>";
$fp=fopen($file,"r"); //mit TAB als Feldtrenner
//Datensatzzaehler (DSz) auf 0 setzen
$counter==0;
echo "...starting upload!<br><br>";
//Datei zeilenweise auslesen und in die Datenbank schreiben
while($line=fgets($fp,1024)) {
.....
}
Kommentar