Läsa in ett exceldokument...

PHP

10 svar · 782 visningar · startad av hvnter

Medlem sedan juli 200024 inlägg
Trådstart#1

Går det att läsa in ett exceldokument till en sida med hjälp av PHP. Och hur skulle man då gå tilll väga, alltså så information från olika fält kommer på olika ställen i t.ex en tabell?

Medlem sedan feb. 20001 270 inlägg
#2

Du får öppna excel-kalkylen i Excel och spara som tabb-separerad text.
Sedan kan Du ladda in den tabb-separerade texten i PHP och göra vad Du tänkt Dig med texten!

Medlem sedan juli 2000212 inlägg
#3

I ASP går det att köra excel-document med hjälp av ADO och använda documentet som vilken db som helst. Det kanske går med PHP också?

Medlem sedan feb. 20001 270 inlägg
#4

Nej.

Medlem sedan juli 200024 inlägg
#5

Jag kan inget PHP själv, bara en del ASP, men jag behöver alltså läsa in en textfil(numera), i stil med:
Namn [Tab] E-mail
Till ett phpdokument, i en tabell med två kolumner då.
Och jag kan alltså bara använda PHP p.g.a webservern...

Hur ska jag gå till väga?

Medlem sedan apr. 20003 971 inlägg
#6

Något liknande borde fungera.

//Läs in varje rad i en vektor
$tabell = file( dinfil );

// Dela upp varje rad i en egen vektor
foreach( $tabell as $key => $value )
$tabell[$key] = explode( ";", $value );

Byt ut kommatecknet mot \t om du vill använda tabb istället. Det är dock bättre att använda komma eftersom risken finns att Excel lägger flera tabbar på rad för att det ska bli fin struktur i text-dokumentet och då räknas varje tabb som en ny kolumn.

Medlem sedan juli 200024 inlägg
#7

Hur skulle detta gå till om jag ska läsa in namn och email från ett text dokument som ser ut såhär:
namn,email
namn,email
...

i en tabell som denna:
<table width="600">
<tr><td><b>Namn:</b></td>
<td><b>E-postadress:</b></td>
</tr><tr>
<td>[Namn]</td>
<td>[E-mail]</td>
</tr>
</table>

[Redigerat av hvnter den 14 jul 2000]

Medlem sedan apr. 20003 971 inlägg
#8

För att foreach ska fungera måste du ha PHP4. Hojta till om du inte har det.

foreach( $tabell as $key => $value )
{
  $tabellrad = explode( ";", $value );
  echo "<td>" . $tabellrad[0] . "</td><td>" . $tabellrad[1] . "</td>";
}

Medlem sedan juli 200024 inlägg
#9

Kör php4 så nu funkar det alldeles utmärkt. En liten fråga bara, vad är PHPs motsvarighet till ASPs request funktion, alltså att ta en variabel från adressraden, typ "fil.php?a=hej"?

Medlem sedan apr. 20003 971 inlägg
#10

som standard skapas en global variabel med namnet $a om du anropar så

hur enkelt som helst

echo "a = $a";

samma svar under :q

Medlem sedan dec. 19996 592 inlägg
#11

fil.php?txt=Hej
-----------------
<?php echo $txt; ?>

Skriver ut hej.. inget request i php inte :D

267 ms totalt · 4 externa anrop · v20260731065814-full.d34c6d5a
125 ms — deklarationer (db)
0 ms — hämta statistik (cache)
137 ms — hämta tråd, inlägg och bilagor (db)
123 ms — ändringar (db)