Avatar billede nielsbrinch Nybegynder
03. april 2003 - 19:21 Der er 8 kommentarer og
1 løsning

Byg lille program til at kigge i separeret fil

Jeg har en fil med nogle informationer separeret med |. Sådan en linje kan f.eks. se sådan ud:

Kaj Torstensen|Nyborgvej 5|5000|Odense C|123@456.dk|11811339|2,0 Ghz (kr. 1840,00)|512 MB (kr. 700,00)|60 GB (kr. 860,00)|52x Sony (kr. 265,00)|Ingen (kr. 0,00)|GeForce4 Ti 4200 (kr. 1520,00)|Indbygget 16 bit (kr. 0,00)|Ingen (kr. 0,00)|Creative SoundWorks 2.1 Slim (kr. 690,00)|Logitech MX300 Optical (kr. 380,00)|Ingen (kr. 0,00)|Ingen (kr. 0,00)|||||Girokort|

Det er én linje!

Derefter kommer der et uvist antal andre linjer, med samme antal informationer i hver. Bemærk at der er nogle "|" i træk til sidst, det er fordi der er nogle informationer der ikke er udfyldt.

Mit mål er at få alle disse linjer ud på en html-side i et lidt mere læseligt format. Der er sikkert en der har noget lignende liggende som lige kan tilpasse det. Mange tak for hjælpen!
Avatar billede gladmhensk Nybegynder
03. april 2003 - 19:38 #1
Får du info fra en mysql database ??
Avatar billede ion Nybegynder
03. april 2003 - 19:43 #2
nielsbrinch:
$string = "Kaj Torstensen|Nyborgvej 5|5000|Odense C|123@456.dk|11811339|2,0 Ghz (kr. 1840,00)|512 MB (kr. 700,00)|60 GB (kr. 860,00)|52x Sony (kr. 265,00)|Ingen (kr. 0,00)|GeForce4 Ti 4200 (kr. 1520,00)|Indbygget 16 bit (kr. 0,00)|Ingen (kr. 0,00)|Creative SoundWorks 2.1 Slim (kr. 690,00)|Logitech MX300 Optical (kr. 380,00)|Ingen (kr. 0,00)|Ingen (kr. 0,00)|||||Girokort|";

$stykker = explode("|", $string);

for ($i = 0; i <= count($stykker); $i++) {
    echo $stykker[$i]."<br />";
}
Avatar billede ion Nybegynder
03. april 2003 - 19:47 #3
Hov, lidt slamkode der...

<?php
$string = "Kaj Torstensen|Nyborgvej 5|5000|Odense C|123@456.dk|11811339|2,0 Ghz (kr. 1840,00)|512 MB (kr. 700,00)|60 GB (kr. 860,00)|52x Sony (kr. 265,00)|Ingen (kr. 0,00)|GeForce4 Ti 4200 (kr. 1520,00)|Indbygget 16 bit (kr. 0,00)|Ingen (kr. 0,00)|Creative SoundWorks 2.1 Slim (kr. 690,00)|Logitech MX300 Optical (kr. 380,00)|Ingen (kr. 0,00)|Ingen (kr. 0,00)|||||Girokort|";
$stykker = explode("|", $string);
for ($i = 0; $i <= count($stykker); $i++)
{
    echo "$stykker[$i]<br />";
}
?>
Avatar billede nielsbrinch Nybegynder
03. april 2003 - 19:59 #4
De der linjer som skal præsenteres skal hentes fra en fil.
Avatar billede tefcke Nybegynder
03. april 2003 - 20:09 #5
ion >> udover du tæller en gang for meget i din løkke, er jeg enig!

en anden måde hvar du er sikker på du kommer præcis alle elementer igennem i et array er foreach():

foreach ( $stykker as $et_stykke ) {
  print("$et_stykke</ br>");
}
Avatar billede ion Nybegynder
03. april 2003 - 20:11 #6
<?php
$filname = "myfile.txt";
$fp = fopen($filename, "r");
$string = fread($fp, filesize($filename));
fclose($fp);
$string = "Kaj Torstensen|Nyborgvej 5|5000|Odense C|123@456.dk|11811339|2,0 Ghz (kr. 1840,00)|512 MB (kr. 700,00)|60 GB (kr. 860,00)|52x Sony (kr. 265,00)|Ingen (kr. 0,00)|GeForce4 Ti 4200 (kr. 1520,00)|Indbygget 16 bit (kr. 0,00)|Ingen (kr. 0,00)|Creative SoundWorks 2.1 Slim (kr. 690,00)|Logitech MX300 Optical (kr. 380,00)|Ingen (kr. 0,00)|Ingen (kr. 0,00)|||||Girokort|";
$stykker = explode("|", $string);
for ($i = 0; $i < count($stykker); $i++)
{
    echo "$stykker[$i]<br />";
}
?>

- burde kunne gøre det.

tefcke: Det kan man også :)
Avatar billede ion Nybegynder
03. april 2003 - 20:17 #7
*suk*. Den nye $string med alt indholdet skal selvfølgelig ikke være med i koden, men læses fra filen.
Avatar billede nielsbrinch Nybegynder
03. april 2003 - 21:27 #8
Jeg prøvede at køre det her:

<?php
$filname = "ordrer.txt";
$fp = fopen($filename, "r");
$string = fread($fp, filesize($filename));
fclose($fp);
$stykker = explode("|", $string);
for ($i = 0; $i < count($stykker); $i++)
{
    echo "$stykker[$i]<br />";
}
?>

Jeg fik følgende fejl:

Warning: fopen("", "r") - Inappropriate ioctl for device in /var/www/hotels/.dk/pcshoppen/html/ordrer.php on line 11

Warning: stat failed for (errno=2 - No such file or directory) in /var/www/hotels/.dk/pcshoppen/html/ordrer.php on line 12

Warning: Supplied argument is not a valid File-Handle resource in /var/www/hotels/.dk/pcshoppen/html/ordrer.php on line 12

Warning: Supplied argument is not a valid File-Handle resource in /var/www/hotels/.dk/pcshoppen/html/ordrer.php on line 13

Jeg har dobbelttjekket at filens navn er rigtigt. Prøvede også at indsætte /var/www/hotels/.dk/pcshoppen/html/ordrer.txt uden held.
Avatar billede nielsbrinch Nybegynder
03. april 2003 - 21:28 #9
ahh, filname != filename :D

Tak for hjælpen
Avatar billede Ny bruger Nybegynder

Din løsning...

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.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester