PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Excelzeilen anzeigen lassen


FastRow
08.11.2009, 12:46:46
also... ich weiß das hier nur PHP supported wird aber das problem was ich versuche zu lösen kann in PHP oder html umgesetzt werden is mir eigentlich total wurscht

ich hab schon ohne ende google ausgereizt aber nichts gefunden

ich habe z.b. einen großen dienstplan und möchte bzw brauche einen code womit ich ohne große umstände einfach nur sagen wir auf der index.html oder indx.php, wie gesagt wurscht, zeile 1-40 anzeigen lassen kann oder gleich nur bestimmte zellen und die excel formatierung mitnimmt

ich hab mir schon gedacht die tabelle als htm zu speichern und da einzelne zeilen ausgeben zu lassen aber mir ist dann bewusst geworden das ich dann einzelne zeilen aus dem quellcode übernehme mehr nicht oder mir den ganzen plan anzeigen lassen kann indem ich ihn direkt aufrufe
und das will ich nicht weil ich mehrer benutzer über die htacces mit verschiedenen zugriffsrechten einrichten will also

z.b. benutzer1 ein kann zugreifen auf index1.php die wiederum nur Zeile 1-10 (oder bestimmte zellen) aus der excel tabelle anzeigt

ist sowas möglich? ohne größeren aufwand oder zusatzsoftware

danke im vorraus

vt1816
08.11.2009, 13:27:33
[...]
ist sowas möglich?


JA!

[...]
ohne größeren aufwand oder zusatzsoftware


NEIN - denn spätestens bei der Rechteverteilung hast Du Dir die Karten zu legen. Du könntest entprechend der Rechte (zeilenweise) die Tabelle speichern und dann im www wieder ausgeben.

Um welche Größenordnung von Tabelle handelt es sich denn (Excel: A1-IV65536)?

FastRow
08.11.2009, 14:07:43
mach dir mal keine sorgen um die rechteverteilung die bekomm ich hin ich möchte bloß einfach bestimmte zeilen aus einer tabelle auslesen und darstellen

soweit hätt ich das schon aber es habert daran bestimmte zeilen auszulesen

*'<?php
error_reporting(E_ALL ^ E_NOTICE);
require_once 'includes/common.php';
$data = new Spreadsheet_Excel_Reader("einsatzplan.xls");
?>
<html>
<head>
<style>
table.excel {
border-style:ridge;
border-width:1;
border-collapse:collapse;
font-family:sans-serif;
font-size:12px;
}
table.excel thead th, table.excel tbody th {
background:#CCCCCC;
border-style:ridge;
border-width:1;
text-align: center;
vertical-align:bottom;
}
table.excel tbody th {
text-align:center;
width:20px;
}
table.excel tbody td {
vertical-align:bottom;
}
table.excel tbody td {
padding: 0 3px;
border: 1px solid #EEEEEE;
}
</style>
</head>

<body>
<?php echo $data->dump(true,true); ?>
</body>
</html>

vt1816
08.11.2009, 14:20:16
mach dir mal keine sorgen um die rechteverteilung die bekomm ich hin ich möchte bloß einfach bestimmte zeilen aus einer tabelle auslesen und darstellen

soweit hätt ich das schon aber es habert daran bestimmte zeilen auszulesen


Auch hier gilt wieder: Wer lesen kann - ist klar im Vorteil.

Mein Vorschlag (von Dir als Sorgen bezeichnet) bezog sich auf die (zeilen-/abschnittsweise) Speicherung Deines großen Dienstplans - denn dann läßt sich die Anzeige super über die Rechteverteilung steuern.

FastRow
08.11.2009, 14:31:00
Auch hier gilt wieder: Wer lesen kann - ist klar im Vorteil.

Mein Vorschlag (von Dir als Sorgen bezeichnet) bezog sich auf die (zeilen-/abschnittsweise) Speicherung Deines großen Dienstplans - denn dann läßt sich die Anzeige super über die Rechteverteilung steuern.


lol, entschuldige bitte meine jetzt unangebrachte ausdrucksweise und kommende arroganz

[WUT AN]
aaaaaaaaaaaaaaber
wenn ich vorgehabt hätte den gesamten scheiß plan zu splitten, in einzelne dateien zu legen und darauf die rechte zu verteilen würde ich mit dem ganzen mist hier garnicht erst anfangen, es hat seine gründe warum ich das genau so machen möchte sonst würd ich ja nicht fragen
[WUT WIEDER AUS]

nochmals entschuldige

kannst du mir jetzt vll helfen

vt1816
08.11.2009, 14:50:04
[...]
kannst du mir jetzt vll helfen

Beantwortest Du vorher noch meine Frage:
Um welche Größenordnung von Tabelle handelt es sich denn (Excel: A1-IV65536, ??? MB)?

In der Zwischenzeit denke ich weiter über Dein Problem nach ... ;-)

FastRow
08.11.2009, 15:21:10
momentan liegt die größe bei 183 KB wird aber auf jedenfall unter 1 MB bleiben

ich nutze die ersten 160 zeilen und bei den spalten werd ich wohl auch nie über FF hinaus kommen

vt1816
08.11.2009, 15:47:04
Dann ließ mittels $data->dumptoarray() die Informationen aus Deinem (großen) Dienstplan in ein Array und gib nur die Zeilen aus die benötigt werden.

FastRow
08.11.2009, 19:39:24
und das mache ich wie

vt1816
08.11.2009, 21:02:15
und das mache ich wie
Verstehe gerade Dein Statment nicht?

Hast Du etwa die DOCUMENTATION (http://code.google.com/p/php-excel-reader/wiki/Documentation) nicht gelesen? Oder ist Dir nur der Umgang mit Arrays nicht bekannt?

FastRow
08.11.2009, 21:07:34
doch hab gelesen aber in sachen php bin ich blutiger anfänger und ich werd aus der syntax nicht schlau

vt1816
08.11.2009, 21:40:06
mach dir mal keine sorgen um die rechteverteilung die bekomm ich hin ich möchte bloß einfach bestimmte zeilen aus einer tabelle auslesen und darstellen

soweit hätt ich das schon aber es habert daran bestimmte zeilen auszulesen


und das mache ich wie

doch hab gelesen aber in sachen php bin ich blutiger anfänger und ich werd aus der syntax nicht schlau

Erkennst Du den Wiederspuch zwischen dem ersten Posting und den beiden anderen? Damit macht man sich keine Freunde.

Du kommst her mit einer Lösung/einem Script von Dritten und erwartest das wir Dir dabei weiter helfen. Dann möchtest Du aber auch Deinen Teil dazu beitragen. Eine mögliche Lösung (http://www.selfphp.de/forum/showpost.php?p=132055&postcount=8) habe ich Dir ja schon gepostet. Jetzt ist es an Dir sie einzubinden und wenn Du dann damit nicht weiterkommst, lesen wir uns hier wieder - ok?

FastRow
09.11.2009, 07:39:02
was hat das mit einem script von dritten zu tun?

nur weil ich kein eigenes script verwende, wäre es jetzt so schlimm mir an einem beispiel zu zeigen was ich tun muss?

klar für deine lösung bin ich auch dankbar nur kann ich leider nichts damit anfangen weil ich nicht weiß wo ich dein $data->dumptoarray() eintragen muss ob ich noch irgendwas dazu setzen muss und wie ich es dann ausgebe

ich hatte auch zuerst daran gedacht aus der common.php (hauptdatei des scripts der dritten) einfach nur die zeilen auszulesen die ich benötige und dann für jeden user das extra einbinde aber auch dazu besitze ich nicht das nötige knowhow in sachen php

FastRow
13.11.2009, 18:25:50
<?php
error_reporting(E_ALL ^ E_NOTICE);
require_once '.../common.php';
$data = new Spreadsheet_Excel_Reader('.../einsatzplan.xls');
?>
<html>
<head>
<br>
<table width="600" border="0" cellspacing="0" cellpadding="0">
<tr><td colspan="2"><img src="..."></td></tr>
<tr><td>
<br>
<br>
<input type="submit" onClick="location.href='...'" value="Zurück" />
<br>
<br>
<br>
<style>
table.excel {
border-style:ridge;
border-width:1;
border-collapse:collapse;
font-family:sans-serif;
font-size:12px;
}
table.excel thead th, table.excel tbody th {
background:#CCCCCC;
border-style:ridge;
border-width:1;
text-align: center;
vertical-align:bottom;
}
table.excel tbody th {
text-align:center;
width:20px;
}
table.excel tbody td {
vertical-align:bottom;
}
table.excel tbody td {
padding: 0 3px;
border: 1px solid #EEEEEE;
}
</style>
</head>

<body>

<?php

$data->dump(true,true);

$start = 5;
$end = 10;
do{
array_merge($data, $data->getRow($start++, 10, 20));
}while($start <= $end);
print_r($data);

?>

</body>
</html>

soweit bin ich jetzt schon gekommen, dennoch erscheint folgende fehlermeldung

Fatal error: Call to undefined method Spreadsheet_Excel_Reader::getRow() in /.../einsatzplan.php on line 56

wo liegt jetzt mein denkfehler?

vt1816
13.11.2009, 19:13:54
[...]
wo liegt jetzt mein denkfehler?

Es gibt keine Methode getRow().

FastRow
13.11.2009, 19:22:08
ist mir aber im zusammenhang mit sql geläufig das wird doch wohl auch mit ne simplen datei gehen

vt1816
13.11.2009, 19:27:21
Jedoch benutzt Du sie in Verbindung mit Spreadsheet_Excel_Reader::getRow() und $data->getRow() und das funktioniert (so) nicht, wenn die Methode nicht vorhanden/definert ist.

FastRow
13.11.2009, 19:33:20
stimmt

vt1816
13.11.2009, 19:51:32
stimmt

Dann ändere es - definiere Dir die Methode.


PS: Verliere auch meinen og. Vorschlag nicht aus dem Auge ;-)