webForumDet fria alternativet

File

4 svar · 230 visningar · startad av sanke

sankeMedlem sedan feb. 200327 inlägg
#1

Hello !
Skulle behöva lite tipps,råd för hur jag ska göra !
Ska altså göra en sida där användare skall kunna ladda upp innehållet i en textfil till en befintilig tabell i databsen.
text och db ser ut så här..

text.txt
Sven Göransson
gatan 4 875 33
stockholm
--------------------
fält i db
namn
adress
stad
--------------------

Hur går man tillväga då ?
Skulle vara tacksam för lite hjälp.

MatteMedlem sedan aug. 20002 975 inlägg
#2

Du har i ditt filuppladdningsformulär något i stil med:

<input name="userfile" type="file">

Sedan i skriptet du skickar till:

if (is_uploaded_file($_FILES['userfile']['tmp_name'])) { 
   
   $content = file($_FILES['userfile']['tmp_name']);

   $sql = "INSERT INTO tabell(namn, adress, stad) VALUES('".trim($content[0])."', '".trim($content[1])."', '".trim($content[2])."')";
   mysql_query($sql);

}

Är du inte hundra på hur man hanterar filuppladdning så står det om det här: http://www.php.net/manual/en/features.file-upload.php

sankeMedlem sedan feb. 200327 inlägg
#3

ok.. Det vore jättebra om du förklarade lite närmare vad koden gör !!

MatteMedlem sedan aug. 20002 975 inlägg
#4
if (is_uploaded_file($_FILES['userfile']['tmp_name'])) {

Kollar om någon fil är uppladdad och om den är det

$content = file($_FILES['userfile']['tmp_name']);

Öppnar de uppladdade filen, som ligger i en temporär katalog, och lägger den i en array ($content) där varje rad i filen blir ett array-element.

trim($content[0])

rensar bort skräptecken samt dolda tecken i början och slutet av raden/array-elementet.

Det hade också gått att skriva det så här:

if (is_uploaded_file($_FILES['userfile']['tmp_name'])) { 
   
   $content = file($_FILES['userfile']['tmp_name']);
   
   for ($i=0; $i<sizeof($content); $i++) {
     trim($content[$i]);
   }

   $sql = "INSERT INTO tabell(namn, adress, stad) 
           VALUES('{$content[0]}', '{$content[1]}', '{$content[2]}')";
   mysql_query($sql);

}
sankeMedlem sedan feb. 200327 inlägg
#5

tack !

123 ms totalt · 3 externa anrop · v20260731065814-full.0e50b1ef
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
120 ms — hämta tråd, inlägg och bilagor (db)