hele-database-in-xls

Gesponsorde koppelingen

PHP script bestanden

  1. hele-database-in-xls

« Lees de omschrijving en reacties

functions.php

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
<?php


function createXLS($tabel,$db)
{

    if($tabel == '*' || $tabel == 'ALL')
    {

        // Database query
        $qXLS = "SHOW TABLES";
        $rXLS = mysql_query($qXLS);
        
        // Array genereren met namen tabellen
        $tabel = array();
        while($table = mysql_fetch_array($rXLS))
        {

            $tabel[] = $table[0];
        }

        
        // Copyright
        $output = "Database ".strtoupper($db)." geconverteerd naar .xls door Roel Moser";
        $output .= "\n\n";    
        
            
        foreach($tabel as $nummer => $naam)
        {

            // Database query
            $qXLS = "SELECT * FROM ".$naam;
            $rXLS = mysql_query($qXLS);
            
            $velden = mysql_list_fields($db,$naam);
            
            $kolommen = mysql_num_fields($velden);
            
            // Tabeltitel
            $output .= "-- TABEL : ".strtoupper($naam)." --";
            $output .= "\n";
            
            // Veldnamen
            for ($i = 0; $i < $kolommen; $i++)
            {

                $l = mysql_field_name($velden, $i);
                $output .= $l."\t";
            }

            $output .= "\n";
            
            // DB gegevens
            while ($l = mysql_fetch_array($rXLS))
            {

                $total = count($l);
                for ($i = 0; $i < $kolommen; $i++)
                {
    
                        $output .= $l[$i]."\t";
                }
                    
                $output .= "\n";
            }

            $output .= "\n\n\n";
        }        
        
    }

    else
    {
        if(!is_array($tabel))
        {

            echo "Input moet een array zijn.";
        }

        else
        {
            // Copyright        
            $output = "Database ".strtoupper($db)." geconverteerd naar .xls door Roel Moser";
            $output .= "\n\n";
            foreach($tabel as $naam)
            {

                // Database query
                $qXLS = "SELECT * FROM ".$naam;
                $rXLS = mysql_query($qXLS);
                
                $velden = mysql_list_fields($db,$naam);
                
                $kolommen = mysql_num_fields($velden);
                
                // Tabeltitel
                $output .= "-- TABEL : ".strtoupper($naam)." --";
                $output .= "\n";
                
                // Veldnamen
                for ($i = 0; $i < $kolommen; $i++)
                {

                    $l = mysql_field_name($velden, $i);
                    $output .= $l."\t";
                }

                $output .= "\n";
                
                // DB gegevens
                while ($l = mysql_fetch_array($rXLS))
                {

                    $total = count($l);
                    for ($i = 0; $i < $kolommen; $i++)
                    {
    
                            $output .= $l[$i]."\t";
                    }
                    
                    $output .= "\n";
                }

                $output .= "\n\n\n";
            }
        }
    }
    
    // In xls stoppen
    $f = fopen ('Database.xls','w');
    
    fputs($f, $output);
    fclose($f);
    
    header('Content-type: application/vnd.ms-excel');
    header('Content-Disposition: attachment; filename="Database.xls"');
    readfile('Database.xls');
}


?>
sqlxls_test.php (de selects kunnen natuurlijk ook met php worden opgehaald, niet handmatig. Hier had ik echter geen zin in :).
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
<?php
// PHP Errors tonen
error_reporting(E_ALL);
ini_set("display_errors", 1);

// Database
include("_config.inc.php");
include("functions.php");
/*
'gebruikers','bedrijven');
    $db = 'PhphulpXLS';
    createXLS('*',$db);
    */

if($_SERVER['REQUEST_METHOD'] == 'POST')
{

    
    if($_POST['wat'] == 'NONE' && !empty($_POST['tabel']))
    {

        $tabel = $_POST['tabel'];
        $kolom = array();
        foreach($tabel as $naam)
        {

            if(isset($naam))
            {

                $kolom[] = $naam;
            }
        }

        $db = 'PhphulpXLS';
        createXLS($kolom,$db);        
    }

    elseif($_POST['wat'] != 'NONE')
    {

        if($_POST['wat'] != 'ALL')
        {

            $kolom = array($_POST['wat']);
            $db = 'PhphulpXLS';
            createXLS($kolom,$db);    
        }

        else
        {
            $db = 'PhphulpXLS';
            createXLS('ALL',$db);    
        }        
    }

    else
    {
        echo "Vul je wel even wat in?! <a href='sqlxls_test.php'>Ga terug</a>";
    }
}


// BELANGRIJK!!!
if($_SERVER['REQUEST_METHOD'] != 'POST')
{

?>

<form name='sqlxls' method="post">
    <select name="wat">
        <option value="NONE">--------------------------------</option>
        <option value='ALL'>Hele database</option>
        <option value='bedrijven'>Tabel: bedrijven</option>
        <option value='gegevens'>Hele Tabel: gegevens</option>
        <option value='gebruikers'>Hele Tabel: gebruikers</option>                        
    </select><br /><br /><br />

    of: meerdere tabellen:<br /><br /><br />

    
    <input type="checkbox" name="tabel[]" value="bedrijven" /> Bedrijven<br />
    <input type="checkbox" name="tabel[]" value="gegevens" /> Gegevens<br />
    <input type="checkbox" name="tabel[]" value="gebruikers" /> Gebruikers<br />  
    
    
<br /><input type="submit" name="button" value="Geef mij die XLS!" />
</form>    
<?php
}
?>
_config.inc.php
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
<?php
$password
= '@@@@@@t';
$user = '@@@@@@';
$db = 'PhphulpXLS';
$host = 'localhost';
$mysql = mysql_connect($host,$user,$password) or die("Er is een fout opgetreden bij het verbinden met de database!");

mysql_select_db($db) or die("Database bestaat niet!");
?>

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.