Veröffentlicht 9. Mai 200322 j Hallo, ich habe eine Vereinshomepage gemacht. Ich möchte nun unsere Mitgliederexcelliste in dieser HP veröffentlichen. Nun wollte ich wissen wie und ob es überhaupt geht eine Excelliste da irgendwie einzubinden? Kann ich diese dann eigentlich wenn ich die HP im Browser aufrufe auch noch verändern, das sollte nämlich auch noch möglich sein, da ich die seite eh über einen login schütze. Gruß
9. Mai 200322 j Hallo, wenn Du die Excel Datei mit in das Homepageverzeichnis legst, dann kannst Du mit <a href="www.url.de/excel.xls">Excel Datei</a> diese öffnen. Mann kann die Daten zwar ändern, man kann die geänderte Version nicht wieder auf dem Server speichern. Frank
13. Mai 200322 j Wenn Deine Excel-Tabelle keine Formeln enthält, sondern es sich nur um eine Tabelle mit statischen Daten handelt, speicherst Du Deine Excel-Datei im CSV-Format ab. Nennen wir sie einfach mal test.csv. Diese speicherst Du auf Deinem Webserver. Anschließend änderst Du die Zugriffsberechtigungen, so daß die Datei auch durch das unten abgebildete PHP-Skript geändert werden kann. Das Skript liest die test.csv ein und stellt mittels HTML-Formularfelder in einer Tabelle dar und hängt jeweils noch fünf Zeilen unten dran, so daß Du sie auch erweitern kannst. Willst Du eine Zeile löschen, machst Du die Felder einfach leer. Leere Zeilen werden durch das Skript ausgefiltert und nicht gespeichert. test.csv: Name,Vorname,Strasse,Telefon Wurst,Hans,Schulstr. 5,040/12345 Mustermann,Martin,Musterstr,089/54321 tabelle.php: <?php $datei="test.csv"; $trennzeichen=","; if(isset($feld)) { // Daten zum Speichern vorbereiten for($i=0;$i<count($feld);$i++) { for($t=0;$t<count($feld[$i]);$t++) { $zeile[$i].=$feld[$i][$t].$trennzeichen; } $zeile[$i]=substr($zeile[$i],0,strlen($zeile[$i])-1); } // Tabelle speichern, dabei leere Zeilen nicht speichern $fp = fopen ($datei, "w"); for($i=0;$i<count($zeile);$i++) { if(strlen(trim($zeile[$i])) != count($feld[0])-1) { fputs($fp,$zeile[$i]."\n"); } } fclose($fp); } // csv-Datei einlesen und in einem Array ablegen $zeile=file($datei); // Spaltenüberschriften ausgeben $ueberschrift=explode($trennzeichen,$zeile[0]); echo "<form action='".$PHP_SELF."' method='post'>\n<table border=1>\n<tr>\n"; for($i=0;$i<count($ueberschrift);$i++) { echo "<td><b>".$ueberschrift[$i]."</b><input type='hidden' name='feld[0][]' value='".$ueberschrift[$i]."'></td>\n"; } echo "</tr>\n"; // befüllte Tabellenzellen ausgeben for($i=1;$i<count($zeile);$i++) { echo "<tr>\n"; $feld=explode($trennzeichen,$zeile[$i]); for($t=0;$t<count($feld);$t++) { echo "<td><input type='text' name='feld[".$i."][]' value='".trim($feld[$t])."'></td>\n"; } echo"</tr>\n"; } // leere Tabellenzellen ausgeben, um die Tabelle erweitern zu können for($i=0;$i<5;$i++) { echo "<tr>\n"; for($t=0;$t<count($ueberschrift);$t++) { echo "<td><input type='text' name='feld[".(count($zeile)+$i)."][]'></td>\n"; } echo "</tr>\n"; } echo "<tr><td colspan='".count($ueberschrift)."' align='right'><input type='submit' value='Speichern'></td></tr>"; echo "</table>\n</form>"; ?>
Erstelle ein Konto oder melde dich an, um einen Kommentar zu schreiben.