| Subiectul anterior :: Subiectul următor |
| Autor |
Mesaj |
blackshark10
Data înscrierii: 15/Apr/2008
Mesaje: 16
|
| Trimis: Mar Apr 15, 2008 10:28 pm Titlul subiectului: EXCEL 2 MYSQL??? REZOLVAT |
|
|
Stie cineva cum se poate face citirea unui fisier excel cu mai multe coloane(eventual ii dau eu capatul de coloana si nr lor) si apoi importarea inregistrarilor intr-o tabela mysql? asta binenteles din php??
Multam. |
|
| Sus |
|
griffin
Data înscrierii: 07/Dec/2006
Mesaje: 83
|
| Trimis: Mar Apr 15, 2008 11:30 pm Titlul subiectului: |
|
|
Citeste depre LOAD DATA INFILE (asa se face importul)
Uite si linkul de pe siteul MySql
http://dev.mysql.com/doc/refman/5.0/en/load-data.html |
|
| Sus |
|
blackshark10
Data înscrierii: 15/Apr/2008
Mesaje: 16
|
| Trimis: Mar Apr 15, 2008 11:38 pm Titlul subiectului: |
|
|
| merci de raspuns dar mie imi trebuie in php, nu am acces shell la mysql, in plus nu stiu cum si daca functioneaza bine cu fisiere xls? |
|
| Sus |
|
bluecrime
Data înscrierii: 21/Noi/2007
Mesaje: 61
Locație: Botosani
|
| Trimis: Mar Apr 15, 2008 11:55 pm Titlul subiectului: |
|
|
Uite aici un exemplu.
Se incarca un fisier xml facut cu excel.
Pentru a introduce in mysql, trebuie modificat putin.
Cod: <?php
$data = array();
function adauga_persoana( $nume, $prenume, $varsta, $oras )
{
global $data;
$data []= array(
'nume' => $nume,
'prenume' => $prenume,
'varsta' => $varsta,
'oras' => $oras
);
}
$dom = DOMDocument::load( 'test.xml' );
$rows = $dom->getElementsByTagName( 'Row' );
$first_row = true;
foreach ($rows as $row)
{
if ( !$first_row )
{
$nume = "";
$prenume = "";
$varsta = "";
$oras = "";
$index = 1;
$cells = $row->getElementsByTagName( 'Cell' );
foreach( $cells as $cell )
{
$ind = $cell->getAttribute( 'Index' );
if ( $ind != null ) $index = $ind;
if ( $index == 1 ) $nume = $cell->nodeValue;
if ( $index == 2 ) $prenume = $cell->nodeValue;
if ( $index == 3 ) $varsta = $cell->nodeValue;
if ( $index == 4 ) $oras = $cell->nodeValue;
$index += 1;
}
adauga_persoana( $nume, $prenume, $varsta, $oras );
}
$first_row = false;
}
?>
<html>
<head><title>Table</title>
<link href="styles.css" rel="stylesheet" type="text/css">
</head>
<body>
<br><br>
<center><caption>Tabel informativ</caption></center><br>
<table align="center">
<tr>
<th>Nume</th>
<th>Prenume</th>
<th>Varsta</th>
<th>Oras</th>
</tr>
<?php foreach( $data as $row ) { ?>
<tr>
<td><?php echo( $row['nume'] ); ?></td>
<td><?php echo( $row['prenume'] ); ?></td>
<td><?php echo( $row['varsta'] ); ?></td>
<td><?php echo( $row['oras'] ); ?></td>
</tr>
<?php } ?>
</table>
</body>
</html>
Aici ai fisierul test.xml
http://filebox.ro/download.php?key=60a99f0dcc9a6aac53004622b5ee96a3
sau descarca tot scriptul (stilizat putin)
http://filebox.ro/download.php?key=2aacbcd9ee7a1cba2234dc1afd651d47
sau priveste exemplu aici:)
http://albert.ilive.ro/xml2php/ |
|
| Sus |
|
blackshark10
Data înscrierii: 15/Apr/2008
Mesaje: 16
|
| Trimis: Mie Apr 16, 2008 12:01 am Titlul subiectului: |
|
|
| merci bluecrime, din cate vad eu scriptul tau are treaba cu fisiere xml nu excel(xls), ma uit sa vad poate merge si pt. excelul meu |
|
| Sus |
|
bluecrime
Data înscrierii: 21/Noi/2007
Mesaje: 61
Locație: Botosani
|
| Trimis: Mie Apr 16, 2008 12:04 am Titlul subiectului: |
|
|
Pai...
Deschizi cu excelu fisierul xls si dai File > Save As
Si la "Save as type" selectezi "XML Spreadsheet (*.xml)"
Am testat eu si merge garantat:) |
|
| Sus |
|
blackshark10
Data înscrierii: 15/Apr/2008
Mesaje: 16
|
| Trimis: Mie Apr 16, 2008 12:08 am Titlul subiectului: |
|
|
Fatal error: Call to undefined function: load().......(adik linia $dom = DOMDocument::load( 'excel.xml' );
)? |
|
| Sus |
|
griffin
Data înscrierii: 07/Dec/2006
Mesaje: 83
|
| Trimis: Mie Apr 16, 2008 12:44 am Titlul subiectului: |
|
|
Tu ai importat vreodata vreun un fisier csv in MySql cu PhpMyAdmin?
Daca nu incearca sa vezi ce query iti va afisa (o sa fii surprins dar incarca csv-ul pe server si apoi face LOAD DATA INFILE).Oricum un fisier xls cu mai multe worksheet-uri nu poti importa.Asa ca poti sa salvezi fiecare worksheet in parte ca csv si-l importi.Oricum faci cum crezi ca e mai bine.Spor |
|
| Sus |
|
blackshark10
Data înscrierii: 15/Apr/2008
Mesaje: 16
|
| Trimis: Mie Apr 16, 2008 12:48 am Titlul subiectului: |
|
|
Am gasit si rezolvarea doar ca in alta parte.
forums.digitalpoint.c o m/attachment.php?attachmentid=9101&d=1183370670
asta este link-ul spre arhiva cu 4 fisiere php, tot ce trebuie pentru problema mea fara mare bataie de cap. |
|
| Sus |
|
PHPRomania Bot
Bot Member
Data înscrierii: 27/Dec/2007
Mesaje: 1
Locaţie: Server Google |
| Trimis: Mie Dec 26, 2007 7:01 pm Titlul subiectului: Ad |
|
|
|
|
|
| Sus |
|
| |