Avatar billede renegademaster Nybegynder
12. november 2003 - 09:02 Der er 8 kommentarer og
1 løsning

Slet en speciel <tr> i <table>

Hej (igen igen)

Nu har jeg fået lavet noget kode...
(eller rackbox har... TAK!)

nå men jeg skal have slettet:
UVM-fag kort bet.
Karaktertype
Evalueringsform
og
Karakterskala

har self en idé men jeg tror ikke rigtig det virker :S

--<kode>--

<HTML>
<HEAD>
<TITLE>Karaktergennemsnit</TITLE>
</HEAD>
<link rel="stylesheet" type="text/css" href="index.css">
<BODY class="index">
<?php

function file2array($filename, $delimiter){
        $lines = file($filename);
        foreach($lines as $key => $value){
                $fields[]=explode($delimiter,$value);
        }
        return $fields;
}

function array2table($array){
  $result = "<table class=tekst border=1 bordercolor=8CACBB>\n";
  $c=0;
  foreach ($array as $key => $value){
      $result.="<tr>";
      if($c==2){
        $c=0;
        }
        foreach ($value as $key2 => $value2){
        $result.="<td class='td".$c."'>".$value2."</td>";
      }
      $c++;
      $result.="</tr>\n";

  }
  $result.="</table>\n";
  return $result;
}

$myarray = file2array('text.txt', ';');
echo array2table($myarray);
?>

<!-- kode der måske kan bruges til at slete det der nu skal slettes...-->

<?php
function array_delete($array, $filterfor){
  $thisarray = array ();
  foreach($array as $value)
    if(stristr($value, $filterfor)===false && strlen($value)>0)
      $thisarray[] = $value;
  return $thisarray;
}

$array1 = array ('Type','CØSA-formål','Betegnelse','UVM-fag','Niv.','UVM-fag kort bet.','UVM-fag betegnelse','Karaktertype','Kar.type kort bet.','Evalueringsform','Eval.form kort bet.','Karakterskala','Kar.skala kort bet.','Gennemsnit','Beståelsesprocent','Antal elever',);

echo "<pre>array :\n";
print_r($array1);

$array2=array_delete($array1, "UVM-fag kort bet.");

echo "filtered:\n";
print_r($array2);
?>


</body>
</html>

--</kode>--

link til text
link til side
http://karakter.dluxz.dk/text.txt
http://karakter.dluxz.dk

det kan godt være man skal skrive min kode om eller lave en helt ny function... jeg er ligeglad bare det virker ;)

på forhånd tak
/ReneGadeMaster
Avatar billede detox Nybegynder
12. november 2003 - 14:10 #1
Har jeg forstået det rigtigt at du vil fjerne de 4 kollonner du beskriver foroven?
Avatar billede detox Nybegynder
12. november 2003 - 14:11 #2
Altså fjerne dem fra text.txt?
Avatar billede detox Nybegynder
12. november 2003 - 14:14 #3
I så fald er her et forslag, hvis du derimod bare vil fjerne dem fra dit output, behøver du kun nogle få ændringer:


<?
$fjern = array('UVM-fag kort bet.', 'Karaktertype', 'Evalueringsform', 'Karakterskala');
$fil = "text.txt";
$fp = fopen($fil, 'r');
$keys = fgetcsv($fp, 1024, ";");
$new = array_diff($keys, $fjern);
$num_keys = array_keys($new);
rewind($fp);
$nfp = fopen('newtext.txt', 'w');
while (!feof($fp)) {
    $vals = fgetcsv($fp, 1024, ";");
    $newline = "";
    foreach ($num_keys as $val) {
        $newline .= $vals[$val].";";
    }
    $newline .= "\r\n";
    fwrite($nfp, $newline, strlen($newline));
}
fclose($fp);
fclose($nfp);
?>
Avatar billede renegademaster Nybegynder
12. november 2003 - 14:15 #4
Ja de skal ikke "printes" så brugeren kan se dem...
om de så bliver slettet i text.txt eller de bliver filtreret er ligemeget...
Avatar billede renegademaster Nybegynder
12. november 2003 - 14:16 #5
ok skal jeg lige prøve... men den skal jo også slette de ting der står i "rækken" fx. kkarakterskala = 13SKA
Avatar billede detox Nybegynder
12. november 2003 - 14:17 #6
Ja, den sletter naturligvis hele kollonen.
Avatar billede renegademaster Nybegynder
12. november 2003 - 14:18 #7
ok... det prøver jeg lige...
back in 2sec...
Avatar billede renegademaster Nybegynder
12. november 2003 - 14:27 #8
Jamen forfanden hvor er du et dejligt menneske :D
MANGE MANGE TAK!
opret lige et svar så for du de points...

[solved]

<?
$fjern = array('UVM-fag kort bet.', 'Karaktertype', 'Evalueringsform', 'Karakterskala', 'Beståelsesprocent');
$fil = "text.txt";
$fp = fopen($fil, 'r');
$keys = fgetcsv($fp, 1024, ";");
$new = array_diff($keys, $fjern);
$num_keys = array_keys($new);
rewind($fp);
$nfp = fopen('newtext.txt', 'w');
while (!feof($fp)) {
    $vals = fgetcsv($fp, 1024, ";");
    $newline = "";
    foreach ($num_keys as $val) {
        $newline .= $vals[$val].";";
    }
    $newline .= "\r\n";
    fwrite($nfp, $newline, strlen($newline));
}
fclose($fp);
fclose($nfp);
?>


<?php

function file2array($filename, $delimiter){
        $lines = file($filename);
        foreach($lines as $key => $value){
                $fields[]=explode($delimiter,$value);
        }
        return $fields;
}

function array2table($array){
  $result = "<table class=tekst border=1 bordercolor=8CACBB>\n";
  $c=0;
  foreach ($array as $key => $value){
      $result.="<tr>";
      if($c==2){
        $c=0;
        }
        foreach ($value as $key2 => $value2){
        $result.="<td class='td".$c."'>".$value2."</td>";
      }
      $c++;
      $result.="</tr>\n";

  }
  $result.="</table>\n";
  return $result;
}

$myarray = file2array('newtext.txt', ';');
echo array2table($myarray);
?>
[solved]
Avatar billede detox Nybegynder
12. november 2003 - 14:30 #9
Velbekommen c",)
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