[SQL/HTML] SQL file genereren

Pagina: 1
Acties:

  • Josh
  • Registratie: December 2002
  • Laatst online: 11-12-2021

Josh

A Cloggy in Norway

Topicstarter
Dit is Geen scriptrequest

Mijn PHPNuke loopt lekker en, nee dit is geen vraag over mijn Open Source CMS :P. Mijn school heeft momenteel 2 websites waaronder die van mij. Op de officiële zijn sinds kort de roosters openbaar gemaakt. Echter in een nogal onhandig formaat, leerlingen zijn namelijk gesorteerd op leerlingnummer welke allemaal in een tabel zijn weergegeven die gegenereerd is door een roosterprogramma. Helaas is er geen andere manier om te genereren. (De geinteresseerden kunnen de tabel hier vinden.) Als er op een rooster geklikt wordt wordt men doorgestuurd naar een html waar dat rooster op staat. Elk rooster heeft dus een aparte HTML file. Zo zijn er 1100 Roosters.

Nu wil ik deze roosters graag importeren in mijn website zodat leerlingen hun naam simpelweg op kunnen zoeken. Ik heb geen idee hoe ik dat moet doen. Na google en de Omega search geraadpleegd te hebben ben ik tot conclusie gekomen dat er wel op ‘een of andere’ manier in windows een script geschreven kan doen die simpele handelingen (kopieer plakwerk) in grote getalen kan uitvoeren echter ben ik er nog niet achter hoe ik zoiets maak.

In dit geval gaat het om het kopieeren van een aantal dingen uit de HTML file van een rooster (Leerlingnaam, klas en het rooster zelf) en dit dan plakken in een database file (SQL) die ik weer importeer.

Een voorbeeld van de database heb ik geexporteerd om te zien hoe hij opgebouwd is (Mijn verstand van programmeren is namelijk beperkt tot HTML. Voor zover men HTML als programmeren mag verstaan. Ik kan een taal aanpassen omdat dit vaak logisch nadenken is.). Zo’n file moet jullie bekend voorkomen:
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
 CREATE TABLE `nuke__encyclopedia_text` (
  `tid` int(10) NOT NULL auto_increment,
  `eid` int(10) NOT NULL default '0',
  `title` varchar(255) NOT NULL default '',
  `text` text NOT NULL,
  `counter` int(10) NOT NULL default '0',
  PRIMARY KEY  (`tid`),
  KEY `tid` (`tid`),
  KEY `eid` (`eid`),
  KEY `title` (`title`)
) TYPE=MyISAM AUTO_INCREMENT=48 ;

#
# Dumping data for table `nuke__encyclopedia_text`
#

INSERT INTO `nuke__encyclopedia_text` VALUES (1, 1, 'Leerlingnaam', 'Pagina met Rooster', 0);
INSERT INTO `nuke__encyclopedia_text` VALUES (2, 1, 'Leerlingnaam', 'Pagina met Rooster', 0);

Een voorbeeld van het rooster in HTML zal ik niet posten aangezien het geen waarde heeft. Het gaat er dus om dat een aantal regels uit 1100 HTML files in 1 SQL database file moeten komen (zie hierboven) om die vervolgens aan mijn database toe te voegen.

Kan ik hier een script voor schrijven? Dit is Geen scriptrequest, ik doe een poging het probleem zelf op te lossen ik heb alleen een zetje in de goede richting nodig. Ik heb de Search gebruikt maar wist niet zo goed waar ik precies op moest zoeken. De FAQ heb ik doorgelezen maar in het algemen deel stond verder niets over dit soort dingen. De FAQ is vrij diepgaand terwijl ik juist simpele informatie nodig heb.

  • P_de_B
  • Registratie: Juli 2003
  • Niet online
Kan het roosterprogramma niet een CSV bestand of iets dergelijks exporteren. Dat lijkt me vele malen eenvoudiger dan wat je nu wilt.

Oops! Google Chrome could not find www.rijks%20museum.nl


  • foske
  • Registratie: Juli 2001
  • Laatst online: 07:52
Wat je zou kunnen doen (hoewel dit wel programmeer ervaring vereist) is via php de pagina inladen met alle studentennummers (dit heet screen scraping, hoe dat in php gaat weet ik niet uit mijn hoofd, doe niet aan php :)) en dan via een 'regular' expression' het bestand je stukjes hakken.

Door steeds te zoeken op bepaalde specifieke kenmerken, (bijvoorbeeld de 3e <TR> tag) en dan de tekst die daarachter komt in een variable plaatsen totdat hij een volgend tag tegen komt (</tr> bv).

dan kan je hierdoor heen 'loopen' en de aparte pagina's per student inladen. Deze kan je dan op dezelfde manier weer in stukken hakken zodat je de informatie hebt die je wilt..

edit links:
http://nl2.php.net/manual/nl/function.fopen.php

ps. als je het wilt gaan proberen, begin dan heel rustig aan, probeer eens eerst de volledige info te krijgen zonder <body>, en dan zo steeds verder, zal best wel wat code gaan worden, maar volgens mij met de huidige situatie lukt het niet anders denk ik...

[ Voor 23% gewijzigd door foske op 25-08-2004 10:19 ]


  • zwippie
  • Registratie: Mei 2003
  • Niet online

zwippie

Electrons at work

Met de php-functie fopen kun je een pagina inladen. Daarna kun je met regular expressions de relevante info eruit halen (zoals Fossie zegt).

(spuit 11 :o )

How much can you compute with the "ultimate laptop" with 1 kg of mass and 1 liter of volume? Answer: not more than 10^51 operations per second on not more than 10^32 bits.


  • Josh
  • Registratie: December 2002
  • Laatst online: 11-12-2021

Josh

A Cloggy in Norway

Topicstarter
Update
Ik heb de roostermakers gesproken en ik mocht even gebruik maken van het programma dat ze daar draaien. Helaas kan het bestand niet geëxporteerd worden anders dan HTML :/. Helaas heb ik ook geen verstand van programmeren dus fopen lijkt me nogal moeilijk.

Kan dit niet makkelijker? Alle HTML files tot 1 file maken (hoe? :P) en dan een script maken dat automatische knipt/plakt?

En als ik ga foopen en met Regular extensions ga kloten, moet het wel 1 grote file worden natuurlijk. De relevante info eruit halen kan dus met Regular Extensions. Zet dit systeem de relevante informatie dan ook op de goede plek in mijn SQL file?

Help!

[ Voor 24% gewijzigd door Josh op 25-08-2004 17:57 ]


  • Mawlana
  • Registratie: Juli 2002
  • Laatst online: 02:04
GsJosh schreef op 25 augustus 2004 @ 17:55:
Update
Ik heb de roostermakers gesproken en ik mocht even gebruik maken van het programma dat ze daar draaien. Helaas kan het bestand niet geëxporteerd worden anders dan HTML :/. Helaas heb ik ook geen verstand van programmeren dus fopen lijkt me nogal moeilijk.

Kan dit niet makkelijker? Alle HTML files tot 1 file maken (hoe? :P) en dan een script maken dat automatische knipt/plakt?

En als ik ga foopen en met Regular extensions ga kloten, moet het wel 1 grote file worden natuurlijk. De relevante info eruit halen kan dus met Regular Extensions. Zet dit systeem de relevante informatie dan ook op de goede plek in mijn SQL file?

Help!
Haal alle roosters op, vis de relevante info eruit en dump ze in een database. Vervolgens kun je een eigen roostersysteem maken. :+

  • IceM
  • Registratie: Juni 2003
  • Laatst online: 06:52
Met regular expressions kun je de data die je wilt hebben in variabelen krijgen.
Deze moet je dan zelf via php in een sql query proppen en deze executen.
E.g. mysql_query(<query>)

...


  • RobIII
  • Registratie: December 2001
  • Niet online

RobIII

Admin Devschuur®

^ Romeinse Ⅲ ja!

(overleden)
Je hebt geluk dat ik vanavond niks te doen heb :Y)

Ik zal wel eens kijken of ik niet snel een tooltje voor je in elkaar kan flansen (lijkt me wel leuk om effe tussendoor te doen).
Ik zal een (windows) .exe voor je maken waar je tegen aan kan stampen, welke XML uitspuugt. Als je XML bestanden kan lezen ben je met PHP zo klaar.

There are only two hard problems in distributed systems: 2. Exactly-once delivery 1. Guaranteed order of messages 2. Exactly-once delivery.

Je eigen tweaker.me redirect

Over mij


  • Josh
  • Registratie: December 2002
  • Laatst online: 11-12-2021

Josh

A Cloggy in Norway

Topicstarter
O my God, zulke mensen zijn uniek _/-\o_ :>

  • RobIII
  • Registratie: December 2001
  • Niet online

RobIII

Admin Devschuur®

^ Romeinse Ⅲ ja!

(overleden)
/momentje... updated naar 1.1 :Y)
.
.
.
en alweer 1.2 :Y)

[ Voor 247% gewijzigd door RobIII op 26-08-2004 01:03 ]

There are only two hard problems in distributed systems: 2. Exactly-once delivery 1. Guaranteed order of messages 2. Exactly-once delivery.

Je eigen tweaker.me redirect

Over mij


Verwijderd

Ik had ook ff zin om een tool te schrijven. Delphi 7 in win32-modus (zonder VCL)
19 KB compileert. Geen libraries, ocx'en en overige crap nodig!

Broncode is open source om ervan te leren ;)

- Console programma
- parst alle htm rooster bestanden in de actieve directory, haalt daar de leerlinggegevens uit en maakt er een leerlingen.csv bestand van.


code:
1
2
3
4
5
6
D:\>wget -r http://accentgroep.kennisnet.nl/locaties/lok8/Roosters/leerlingen/lee.htm

...

FINISHED --22:30:10--
Downloaded: 7,254,988 bytes in 1181 files



Delphi:
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
--- bestand: project1.dpr ---


program Project1;

uses
  Windows;

{$APPTYPE CONSOLE}

procedure WriteConsole(ConsoleText: string);
begin
  WriteLn(ConsoleText);
end;

function ProcessFile(CurrentDirectory: string; FileName: string; var FileOutput: Text): boolean;
var
  FileInput: Text;
  Leerlingnummer,Naam,Klas: string;
  OutputString: string;
begin
  result := False;

  AssignFile(FileInput,CurrentDirectory+'\'+FileName);
  Reset(FileInput);
  if true then    // IO-check niet geimplementeerd vandaar deze bogus.
  try
    ReadLn(FileInput);
    ReadLn(FileInput);
    ReadLn(FileInput);
    ReadLn(FileInput,Leerlingnummer);
    ReadLn(FileInput);
    ReadLn(FileInput,Naam);
    ReadLn(FileInput,Klas);

    if ((Length(Klas) > 4) and (Pos('&nbsp;',Klas)=1)) then
    begin
      Klas := Copy(Klas,7,Length(Klas)-5);
    end;
    if ((Leerlingnummer <> '') and (Naam <> '') and (Klas <> '')) then
    begin
      WriteConsole('--> ' + FileName + ' --> ' + Leerlingnummer + ', ' +
        Naam + ', ' + Klas);
      WriteLn(FileOutput,'"' + FileName + '","' +Leerlingnummer + '","' +
              Naam + '","' + Klas + '"');

      result := True;
    end
    else
    begin
      WriteConsole('--> ' + FileName + ' --> Fout het bij het parsen. ');
    end;
  finally
    Close(FileInput);
  end
  else
  begin
    WriteConsole('--> ' + FileName + ' --> Kan bestand niet openen. ');
  end;
end;

procedure FindFiles(CurrentDirectory: string);
var
  SearchHandle: THandle;
  Win32FindData: TWin32FindData;
  FileOutput: Text;
begin
  AssignFile(FileOutput,CurrentDirectory+'\'+'leerlingen.csv');
  Rewrite(FileOutput);

  if (true) then    // IO-check niet geimplementeerd vandaar deze bogus.
  try
    SearchHandle := FindFirstFile(PChar(CurrentDirectory+'\lee_*.htm'),Win32FindData);
    if (SearchHandle <> INVALID_HANDLE_VALUE) then
    try
      repeat
        //if (not ((PChar(@Win32FindData.cFileName[0]) = '.') or
        //   (PChar(@Win32FindData.cFileName[0]) = '..'))) then
        begin
          ProcessFile(CurrentDirectory,Win32FindData.cFileName,FileOutput);
        end;
      until (FindNextFile(SearchHandle,Win32FindData)=False)
    finally
      FindClose(SearchHandle);
    end;
  finally
    Close(FileOutput);
  end
  else
  begin
    WriteConsole('Error: Kan uitvoerbestand leerlingen.csv niet openen!');
  end;
end;

var
  FileHandle: THandle = 0;
  retValue: DWORD = 0;
  CurrentDirectory: PAnsiChar = Nil;
begin
  // SetCurrentDirectory('D:\test');
  retValue := GetCurrentDirectory(0,CurrentDirectory);
  if (retValue > 0) then
  begin
    CurrentDirectory := PAnsiChar(LocalAlloc(LPTR,retValue));
    if (CurrentDirectory <> Nil) then
    try
      retValue := GetCurrentDirectory(retValue,CurrentDirectory);
      WriteConsole('Huidige directory: ' + CurrentDirectory);
      FindFiles(CurrentDirectory);
    finally
      LocalFree(Cardinal(CurrentDirectory));
    end;
  end;
end.


Als iemand zin heeft, dan mag deze de gecompileerde executable hosten (met toestemming :P)

[ Voor 59% gewijzigd door Verwijderd op 26-08-2004 00:53 . Reden: executable hosting :P ]


  • RobIII
  • Registratie: December 2001
  • Niet online

RobIII

Admin Devschuur®

^ Romeinse Ⅲ ja!

(overleden)
Zipfile met v1.3 van Roster2Xml (7Kb) :Y)

Gebruik is simpel:
• Je zorgt dat settings.xml in dezelfde directory staat als de .exe
• Je stampt tegen Roster2Xml aan
• Het progje leest de settings.xml uit om te zien welke rooster-indexen er geparsed dienen te worden
• De roosterindexen worden gelezen en alle bijbehorende rooster-bestanden...
• Vervolgens poept 'ie een .xml uit op basis van je settings
• Open het XML bestand met Internet Explorer als je wil zien hoe het er uit ziet.

Je kunt vervolgens met een relatief simpele XSL een mooi pagina'tje knutselen en/of de XML naar een DB duwen en/of.... etc. You get my drift.

En hoewel ik nu te programmeergeil ben om ook nog effe een XSL voor je in elkaar te jassen, hou ik me toch in en laat ik die aan je eigen fantasie over...

Het is geschreven in VB6, dus je hebt de VB6 runtimes nodig en tevens moet er een versie van MSXML zijn geïnstalleerd. Let op:Beide zijn gewoon aanwezig op een Win2K of hoger bak (ik geloof Win98 zelfs ook al)... Gewoon dubbelklikken en als 'ie niks doet effe in het log kijken wat er mis is gegaan. Als je een errormelding in het log vindt, laat het me dan effe weten. Misschien dat ik 'm nog oplos ook ;)

Ik neem aan dat je dit scheduled (windows scheduler roeleert :+ ) om 3:00 's nachts op een zondagnacht ofzo...

De sourcecode (VB6, 3Kb)

edit:
Versie 1.2 logt nu naar log.txt in dezelfde map als de .exe en zal dus niet meer pesten met MsgBoxes...

...en v1.3 parsed de studentnamen nu wat "zekerder"
Verwijderd schreef op 26 augustus 2004 @ 00:21:
Ik had ook ff zin om een tool te schrijven.
...
Die haalt toch alleen de leerlingnaam, klas en nummer op? Of zie ik dat verkeerd of mis ik iets?

[ Voor 49% gewijzigd door RobIII op 26-08-2004 17:06 ]

There are only two hard problems in distributed systems: 2. Exactly-once delivery 1. Guaranteed order of messages 2. Exactly-once delivery.

Je eigen tweaker.me redirect

Over mij


  • RobIII
  • Registratie: December 2001
  • Niet online

RobIII

Admin Devschuur®

^ Romeinse Ⅲ ja!

(overleden)
/quote i.p.v. edit |:(


Laat ik deze ruimte dan maar nuttig gebruiken :Y)

De settings.xml ziet er als volgt uit:
code:
1
2
3
4
<Settings>
    <Indexfile path="D:\lok8\Roosters\leerlingen" filename="lee.htm" output="D:\test8.xml"/>
    <Indexfile path="D:\lok9\Roosters\leerlingen" filename="lee.htm" output="D:\test9.xml"/>
</Settings>


Waarbij je dus zoveel Indexfile nodes kunt aanmaken als je wil.
• Het path attribute specificeert waar er naar een indexfile moet worden gezocht
• Het filename attribute specificeert hoe de index heet
• Het output attribute specificeert hoe de output xml file heet (inc. pad)

Zorg, als je deze file edit, dat de XML valid blijft! Wil je dit controleren, dan open je het bestand in Internet Explorer. Laat die 'm zien (de inhoud), dan is alles ok.

Het had ook zonder deze settings gekund, door (zoals sinaasappelsap) door de directory heen te lopen en alle .htm bestanden in te lezen, maar ik vond dit wel wat mooier.

[ Voor 216% gewijzigd door RobIII op 26-08-2004 14:03 ]

There are only two hard problems in distributed systems: 2. Exactly-once delivery 1. Guaranteed order of messages 2. Exactly-once delivery.

Je eigen tweaker.me redirect

Over mij


Verwijderd

RobIII schreef op 26 augustus 2004 @ 00:42:
Die haalt toch alleen de leerlingnaam, klas en nummer op? Of zie ik dat verkeerd of mis ik iets?
In dit geval gaat het om het kopieeren van een aantal dingen uit de HTML file van een rooster (Leerlingnaam, klas en het rooster zelf) en dit dan plakken in een database file (SQL) die ik weer importeer.
Ach ja, maak gewoon een link naar het orginele rooster.
Ik dacht dat het doel was om relatief gemakkelijk op leerlingnummer/naam te kunnen zoeken en het daarbij behorende rooster te laten zien.

Hier houdt het voor mij op. :O

[ Voor 3% gewijzigd door Verwijderd op 26-08-2004 01:02 ]


  • RobIII
  • Registratie: December 2001
  • Niet online

RobIII

Admin Devschuur®

^ Romeinse Ⅲ ja!

(overleden)
Verwijderd schreef op 26 augustus 2004 @ 01:01:
[...]


[...]


Ach ja, maak gewoon een link naar het orginele rooster.
Ik dacht dat het doel was om relatief gemakkelijk op leerlingnummer/naam te kunnen zoeken en het daarbij behorende rooster te laten zien.

Hier houdt het voor mij op. :O
Je had het wel goed, daar ging het me niet om :> TS vroeg ook duidelijk om alleen leerlingnr, naam en klas.
Ik bedoelde alleen dat mijn progje meteen alles omschrijft naar XML , en dus niet alleen leerlingnaam en nummer/klas, zodat je er makkelijk een XSL omheen kunt gooien of de uitgespugde XML relatief makkelijk in een DB knallen.

Ik vind XML (vooral als "tussenformaat") voor dit soort toepassingen altijd ideaal, vandaar dat ik voor XML koos en geen rechtstreekse connectie met een DB ofzo.

@GsJosh: v1.2 v1.3 staat in mijn vorige posts :)

[ Voor 22% gewijzigd door RobIII op 26-08-2004 17:03 ]

There are only two hard problems in distributed systems: 2. Exactly-once delivery 1. Guaranteed order of messages 2. Exactly-once delivery.

Je eigen tweaker.me redirect

Over mij


  • Josh
  • Registratie: December 2002
  • Laatst online: 11-12-2021

Josh

A Cloggy in Norway

Topicstarter
Heel, heel, heel erg bedankt jongens voor het maken! Er zijn alleen nog een paar foutjes :P. De XML die jouw .exe voor mij gemaakt heeft geeft bij de leerlingnummer dit aan:
code:
1
2
3
<Roster filename="D:\Tgroen.nl\roosters\lee_003964.htm" 
studentnumber="gp-Untis 2004 Rooster 2004/2005 C.S.G. AQUAMARIJN 24.08.04 13:37"
studentname="003964" class="">

Bij de leerlingnaam zet hij vervolgens het leerlingnummer.

De .exe deed er trouwens niet zo lang over. Een paar Minuten trok het 100% CPU maar dat was het, om 3 uur 's nachts was dus niet nodig :P.

Nu krijg ik dus een XML met de <Roster> </Roster> erin. Hoe maak ik van die roosters dan een weer een HTML table? En hoe stamp ik die samen met Studentnumber en Studentname in een SQL file? Die eruit ziet als dit?
code:
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
# phpMyAdmin SQL Dump
# version 2.5.6
# http://www.phpmyadmin.net
#
# Host: localhost
# Generation Time: Aug 26, 2004 at 04:38 PM
# Server version: 4.0.20
# PHP Version: 4.2.3
# 
# Database : `tgroenn_nuke`
# 

# --------------------------------------------------------

#
# Table structure for table `nuke__encyclopedia_text`
#

CREATE TABLE `nuke__encyclopedia_text` (
  `tid` int(10) NOT NULL auto_increment,
  `eid` int(10) NOT NULL default '0',
  `title` varchar(255) NOT NULL default '',
  `text` text NOT NULL,
  `counter` int(10) NOT NULL default '0',
  PRIMARY KEY  (`tid`),
  KEY `tid` (`tid`),
  KEY `eid` (`eid`),
  KEY `title` (`title`)
) TYPE=MyISAM AUTO_INCREMENT=97 ;

#
# Dumping data for table `nuke__encyclopedia_text`
#

INSERT INTO `nuke__encyclopedia_text` VALUES (1, 1, 'Leerlingnaam', 'Rooster in HTML', 0);
INSERT INTO `nuke__encyclopedia_text` VALUES (1, 2, 'Leerlingnaam', 'Rooster in HTML', 0);
INSERT INTO `nuke__encyclopedia_text` VALUES (1, 3, 'Leerlingnaam', 'Rooster in HTML', 0);
------------ Enzovoort -----------

[ Voor 12% gewijzigd door Josh op 26-08-2004 16:41 ]


  • RobIII
  • Registratie: December 2001
  • Niet online

RobIII

Admin Devschuur®

^ Romeinse Ⅲ ja!

(overleden)
GsJosh schreef op 26 augustus 2004 @ 16:40:
Heel, heel, heel erg bedankt jongens voor het maken!
Graag gedaan :>
GsJosh schreef op 26 augustus 2004 @ 16:40:
Er zijn alleen nog een paar foutjes :P. De XML die jouw .exe voor mij gemaakt heeft geeft bij de leerlingnummer dit aan:
code:
1
2
3
<Roster filename="D:\Tgroen.nl\roosters\lee_003964.htm" 
studentnumber="gp-Untis 2004 Rooster 2004/2005 C.S.G. AQUAMARIJN 24.08.04 13:37"
studentname="003964" class="">

Bij de leerlingnaam zet hij vervolgens het leerlingnummer.
Ooops :Y) Ik zal eens effe kijken en een v1.3 voor je bakken :+
GsJosh schreef op 26 augustus 2004 @ 16:40:
De .exe deed er trouwens niet zo lang over. Een paar Minuten trok het 100% CPU maar dat was het, om 3 uur 's nachts was dus niet nodig :P.
Een paar minuten? Zijn 't zoveel roosters of zo'n trage pc? Want bij lok8 (waarvan je de link gaf) deed 'ie bij mij een seconde of 2 over..
Verder had ik ook niet gedacht dat het lang zou duren, dat was niet de reden waarom ik zei dat je 't om 3 uur 's nachts moest schedulen. Ik zei dat omdat "het pakket" dat die HTML uitspuugt dat waarschijnlijk ook op een gezette tijd doet (en ik neem aan wekelijks ofzo). Wil je je server dan niet belasten tijdens "werktijd", dan doe je dat dus in een dood uurtje (b.v. zondagnacht, 3:00 dus...)
GsJosh schreef op 26 augustus 2004 @ 16:40:
Nu krijg ik dus een XML met de <Roster> </Roster> erin. Hoe maak ik van die roosters dan een weer een HTML table?
Met een XSL zou mooi zijn :Y)
GsJosh schreef op 26 augustus 2004 @ 16:40:
En hoe stamp ik die samen met Studentnumber en Studentname in een SQL file? Die eruit ziet als dit?
[...]
Ook hier kun je een XSL voor gebruiken, alleen snap ik het SQL statement niet helemaalja ik snap het wel, maar ik snap het niet :+: Je wil dus de rooster-data als HTML in je SQL frotten? Why in the world zou je dat willen? Waarom normaliseer je de DB niet een beetje en maak je er wat mooie tabelletjes van?

[ Voor 30% gewijzigd door RobIII op 26-08-2004 17:18 ]

There are only two hard problems in distributed systems: 2. Exactly-once delivery 1. Guaranteed order of messages 2. Exactly-once delivery.

Je eigen tweaker.me redirect

Over mij


  • Josh
  • Registratie: December 2002
  • Laatst online: 11-12-2021

Josh

A Cloggy in Norway

Topicstarter
RobIII schreef op 26 augustus 2004 @ 16:51:
Een paar minuten? Zijn 't zoveel roosters of zo'n trage pc? Want bij lok8 (waarvan je de link gaf) deed 'ie bij mij een seconde of 2 over..
Verder had ik ook niet gedacht dat het lang zou duren, dat was niet de reden waarom ik zei dat je 't om 3 uur 's nachts moest schedulen. Ik zei dat omdat "het pakket" dat die HTML uitspuugt dat waarschijnlijk ook op een gezette tijd doet (en ik neem aan wekelijks ofzo). Wil je je server dan niet belasten tijdens "werktijd", dan doe je dat dus in een dood uurtje (b.v. zondagnacht, 3:00 dus...)
Yup, een paar minuten. Om precies te zijn zijn het 1177 leerlingenroosters. Hoeveel lokalenroosters en lerarenroosters zijn weet ik niet. Echt getimed heb ik het niet maar ik had even wat schijfactiviteit een paar minuten met mijn Barton 2500+ met 512 mb RAM.

Ook wel handig wat je nu begrijpt met je 3.00 ;). Ik denk alleen niet dat er vaak geupdate moet worden, ongeveer 2 keer per halfjaar misschien. Wat bedoel je met "Het Pakket"? Jouw EXE Maakt alleen de XML Toch?
Daar zal ik even een kijkje nemen.
RobIII schreef op 26 augustus 2004 @ 16:51:
Ook hier kun je een XSL voor gebruiken, alleen snap ik het SQL statement niet helemaalja ik snap het wel, maar ik snap het niet :+: Je wil dus de rooster-data als HTML in je SQL frotten? Why in the world zou je dat willen? Waarom normaliseer je de DB niet een beetje en maak je er wat mooie tabelletjes van?
Het PHP-Nuke CMS heeft een systeem om een Database te maken. Een zogenaamde 'Encyclopedia'. Je kan verschillende Encyclopedia maken met daarin 'Terms' met een title en een inhoud. De Title is de Studentname en de inhoud wordt het rooster (gewoon die HTML tables die gebruikt worden in leexxxxxx.html) met daarboven het leerlingnummer. Er is in mijn SQL database dus al een table met daarin de Terms die in de databases staan. Als ik de roosters heel makkelijk op een manier in die SQL table kan krijgen dan maakt mijn PHP-Nuke automatisch een op Alfabet gesorteerd geheel van waarin je kan zoeken.

  • Josh
  • Registratie: December 2002
  • Laatst online: 11-12-2021

Josh

A Cloggy in Norway

Topicstarter
Helaas :P. De XML is nog steeds niet goed, wel veranderd :).

code:
1
2
3
4
<Roster filename="D:\Tgroen.nl\roosters\lee_003964.htm" 
studentnumber="<!-- Mirrored from accentgroep.kennisnet.nl/locaties/lok8/Roosters/leerlingen/lee_003964.htm
 by HTTrack Website Copier/3.x [XR&CO'2004], Tue, 24 Aug 2004 21:17:12 GMT -->" 
studentname="003964" class="Arkenbout Thom">

Zoals je kan zien is Studentname het Studentnumber, onder Class staat nu de Studentname :P en de Studentname is nu de filename.

[ Voor 23% gewijzigd door Josh op 26-08-2004 19:19 ]


  • RobIII
  • Registratie: December 2001
  • Niet online

RobIII

Admin Devschuur®

^ Romeinse Ⅲ ja!

(overleden)
GsJosh schreef op 26 augustus 2004 @ 19:18:
Helaas :P. De XML is nog steeds niet goed, wel veranderd :).

Zoals je kan zien is Studentname het Studentnumber, onder Class staat nu de Studentname :P en de Studentname is nu de filename.
Jah, grapjas....
Je bestanden zijn anders als de link die je me gegeven hebt.... |:( Zo ken ik er nog wel één :+
code:
1
<!-- Mirrored from accentgroep.kennisnet.nl/...

komt niet voor in de testbestanden...

Je hebt de source, ik wens er je veel plezier mee :+

Nou, ik zal je matsen... v1.3.1 zou dit probleem moeten verhelpen. NIET getest... Source + Exe.

Dit is echt de laatste keer hoor, heb nog meer te doen...
GsJosh schreef op 26 augustus 2004 @ 18:28:
[...]
Wat bedoel je met "Het Pakket"? Jouw EXE Maakt alleen de XML Toch?
Het pakket dat de HTML uitspuugt... staat er toch? gp-Untis ofzo dus...

[ Voor 76% gewijzigd door RobIII op 26-08-2004 20:24 ]

There are only two hard problems in distributed systems: 2. Exactly-once delivery 1. Guaranteed order of messages 2. Exactly-once delivery.

Je eigen tweaker.me redirect

Over mij


  • Josh
  • Registratie: December 2002
  • Laatst online: 11-12-2021

Josh

A Cloggy in Norway

Topicstarter
Hij werkt nu! Sweet!

* Josh gaat de sourcefile bekijken zonder programmeerervaring :P misschien wordt ik er wijzer van :+.
Pagina: 1