Ik ben een php script aan het schrijven die een dia vervangt in een xml bestand. De oude dia en de nieuwe dia worden uit een html file gehaalt, dan wordt de oude dia gematcht in de xml, en vervangen door de nieuwe. Dit allemaal met search en replace. De variabelen uit de html komen allemaal prima door (gecheckt) en de structuur van het openen van een file en wegschrijven heb ik al eerder gedaan, wat allemaal prima werkte. Hij loopt vast op "fclose($test);". Hier refereert de parser naar als hij bovenstaande foutmelding geeft.
PHP:
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
119
120
121
122
123
124
125
126
| <?php //neem alle variabelen uit editHTML en zet ze om in php variabelen. $checkVar1 = $_POST['checkVar1']; $checkVar2 = $_POST['checkVar2']; $lenenVar1 = $_POST['lenenVar1']; $lenenVar2 = $_POST['lenenVar2']; $naamVar1 = $_POST['naamVar1']; $naamVar2 = $_POST['naamVar2']; $kanumVar1 = $_POST['kanumVar1']; $kanumVar2 = $_POST['kanumVar2']; $kleurVar1 = $_POST['kleurVar1']; $kleurVar2 = $_POST['kleurVar2']; $omscVar1 = $_POST['omscVar1']; $omscVar2 = $_POST['omscVar2']; $afmetingVar1 = $_POST['afmetingVar1']; $afmetingVar2 = $_POST['afmetingVar2']; $jaartalVar1 = $_POST['jaartalVar1']; $jaartalVar2 = $_POST['jaartalVar2']; $verblijfCodeVar1 = $_POST['verblijfCodeVar1']; $verblijfCodeVar2 = $_POST['verblijfCodeVar2']; $verblijfVar1 = $_POST['verblijfVar1']; $verblijfVar2 = $_POST['verblijfVar2']; $dianrVar1 = $_POST['dianrVar1']; $dianrVar2 = $_POST['dianrVar2']; $archiefnrVar1 = $_POST['archiefnrVar1']; $archiefnrVar2 = $_POST['archiefnrVar2']; $auteurVar1 = $_POST['auteurVar1']; $auteurVar2 = $_POST['auteurVar2']; $titelVar1 = $_POST['titelVar1']; $titelVar2 = $_POST['titelVar2']; $plaatsVanUitgaveVar1 = $_POST['plaatsVanUitgaveVar1']; $plaatsVanUitgaveVar2 = $_POST['plaatsVanUitgaveVar2']; $jaarVanUitgaveVar1 = $_POST['jaarVanUitgaveVar1']; $jaarVanUitgaveVar2 = $_POST['jaarVanUitgaveVar2']; $paginaVar1 = $_POST['paginaVar1']; $paginaVar2 = $_POST['paginaVar2']; $afbeeldingVar1 = $_POST['afbeeldingVar1']; $afbeeldingVar2 = $_POST['afbeeldingVar2']; $opmerkingVar1 = $_POST['opmerkingVar1']; $opmerkingVar2 = $_POST['opmerkingVar2']; $twCodeVar1 = $_POST['twCodeVar1']; $twCodeVar2 = $_POST['twCodeVar2']; $twWaardeVar1 = $_POST['twWaardeVar1']; $twWaardeVar2 = $_POST['twWaardeVar2']; $twCatVar1 = $_POST['twCatVar1']; $twCatVar2 = $_POST['twCatVar2']; //maak 3 bestanden aan + hun variabelen. $oudeDia = fopen("oudeDia.xml","w"); $nieuweDia = fopen("nieuweDia.xml","w"); //stop in variabele:oudeDia de oude dia. fputs($oudeDia, "<DIA CHECK=\"$checkVar2\" UITGELEEND=\"$lenenVar2\" NAAM=\"$naamVar2\">\n"); fputs($oudeDia, "<KANUM>$kanumVar2</KANUM>\n"); fputs($oudeDia, "<KLEUR>$kleurVar2</KLEUR>\n"); fputs($oudeDia, "<OMSC>$omscVar2</OMSC>\n"); fputs($oudeDia, "<AFMETING>$afmetingVar2</AFMETING>\n"); fputs($oudeDia, "<JAARTAL>$jaartalVar2</JAARTAL>\n"); fputs($oudeDia, "<VERBLKODE>$verblijfCodeVar2</VERBLKODE>\n"); fputs($oudeDia, "<VERBLIJF>$verblijfVar2</VERBLIJF>\n"); fputs($oudeDia, "<DIANR>$dianrVar2</DIANR>\n"); fputs($oudeDia, "<ARCHIEFNR>$archiefnrVar2</ARCHIEFNR>\n"); fputs($oudeDia, "<AUTEUR>$auteurVar2</AUTEUR>\n"); fputs($oudeDia, "<TITEL>$titelVar2</TITEL>\n"); fputs($oudeDia, "<PL_UITG>$plaatsVanUitgaveVar2</PL_UITG>\n"); fputs($oudeDia, "<JAAR_UITG>$jaarVanUitgaveVar2</JAAR_UITG>\n"); fputs($oudeDia, "<PAGINA>$paginaVar2</PAGINA>\n"); fputs($oudeDia, "<AFBEELDING>$afbeeldingVar2</AFBEELDING>\n"); fputs($oudeDia, "<OPMERKING>$opmerkingVar2</OPMERKING>\n"); fputs($oudeDia, "<TREFWOORDEN>\n"); fputs($oudeDia, "<TREFWOORD KODE=\"$twCodeVar2\" CATEGORIE=\"$twCatVar2\" WAARDE=\"$twWaardeVar2\"/>\n"); fputs($oudeDia, "</TREFWOORDEN>\n"); fputs($oudeDia, "</DIA>"); //stop in variabele:nieuweDia de nieuwe dia. fputs($nieuweDia, "<DIA CHECK=\"$checkVar1\" UITGELEEND=\"$lenenVar1\" NAAM=\"$naamVar1\">\n"); fputs($nieuweDia, "<KANUM>$kanumVar1</KANUM>\n"); fputs($nieuweDia, "<KLEUR>$kleurVar1</KLEUR>\n"); fputs($nieuweDia, "<OMSC>$omscVar1</OMSC>\n"); fputs($nieuweDia, "<AFMETING>$afmetingVar1</AFMETING>\n"); fputs($nieuweDia, "<JAARTAL>$jaartalVar1</JAARTAL>\n"); fputs($nieuweDia, "<VERBLKODE>$verblijfCodeVar1</VERBLKODE>\n"); fputs($nieuweDia, "<VERBLIJF>$verblijfVar1</VERBLIJF>\n"); fputs($nieuweDia, "<DIANR>$dianrVar1</DIANR>\n"); fputs($nieuweDia, "<ARCHIEFNR>$archiefnrVar1</ARCHIEFNR>\n"); fputs($nieuweDia, "<AUTEUR>$auteurVar1</AUTEUR>\n"); fputs($nieuweDia, "<TITEL>$titelVar1</TITEL>\n"); fputs($nieuweDia, "<PL_UITG>$plaatsVanUitgaveVar1</PL_UITG>\n"); fputs($nieuweDia, "<JAAR_UITG>$jaarvanUitgaveVar1</JAAR_UITG>\n"); fputs($nieuweDia, "<PAGINA>$paginaVar1</PAGINA>\n"); fputs($nieuweDia, "<AFBEELDING>$afbeeldingVar1</AFBEELDING>\n"); fputs($nieuweDia, "<OPMERKING>$opmerkingVar1</OPMERKING>\n"); fputs($nieuweDia, "<TREFWOORDEN>\n"); fputs($nieuweDia, "<TREFWOORD KODE=\"$twCodeVar1\" CATEGORIE=\"$twCatVar1\" WAARDE=\"$twWaardeVar1\"/>\n"); fputs($nieuweDia, "</TREFWOORDEN>\n"); fputs($nieuweDia, "</DIA>"); //koppel d100.xml aan variabele:filename $filename = "d100.xml"; //variabele:handle krijgt de waardes uit de filename $handle = fopen($filename, "rb"); //variabele:contents krijgt de juiste string waardes uit de binaire $handle. $contents = fread($handle, filesize($filename)); $nD100 = fopen("nD100.xml","w"); //variabele:nieuweDia krijgt de waarde van variabele:contents waarbij variabele:oudeDia vervangen is door variabele:nieuweDia. $test = str_replace($oudeDia, $nieuweDia, $contents); fputs($nD100, $test); echo "$nD100"; //sluit alle open files en variabelen. fclose($handle); fclose($nieuweDia); fclose($oudeDia); fclose($nD100); //hernoem oude d100 naar d100Oud.xml en nieuweD100.xml naar d100.xml //rename("d100.xml", "d100Oud.xml"); //rename("nD100.xml", "d100.xml"); //ga naar overzicht.php //header("Location: overzicht.php"); ?> |
[ Voor 70% gewijzigd door Shook op 17-03-2004 20:27 ]