1. Inleiding
Allereerst: deze tutorial is niet voor beginners.
Enige kennis van SQL query’s (INSERT, DELETE en UPDATE) is vereist.
Een basiskennis van foutopvang is ook gewenst omdat dit wordt toegepast voor de query’s.
Je moet weten wat een object is en hoe deze werkt in asp.net en je moet weten hoe ‘webcontrols’ werken en wat ze doen.
Deze tutorial zal gebruikmaken van een acces database (die gemakelijk te vervangen is door een mysql of sql-server database).
We gaan gebruikmaken van de webcontrol ‘datagrid’ om gegevens toe te voegen aan een database, deze weer te geven, de mogelijkheid geven om deze te bewerken en om af te sluiten de mogelijkheid om deze te verwijderen.
Een hele boterham dus maar gelukkig heeft asp.net enkele voorgedefiniëerde methodes die dit allemaal toelaten met enkele eenvoudige commando’s.
We gaan een tabel gebruiken waar iemand leerlingen kan invullen voor een reisje naar berlijn. De naam, voornaam, telefoonnummer (telnr) en adres moeten kunnen ingevuld worden.
Het kan zijn dat je server een obdc verbinding vereist om te communiceren met je database. Daarom moet je de database toevoegen aan je OBDC lijst. Dit doe je door naar start->configuratiescherm->systeembeheer->gegevensbronnen (OBDC) te gaan en op toevoegen te klikken.
Vervolgens krijg je een lijstje met verschillende types databases. Hierin staat “Microsoft Acces Driver (.mdb)” wat we nodig hebben voor MS Acces. Stel je wil met een mysql database werken dan download je de OBDC driver voor mysql, installeer je deze en selecteer je “MySQL OBDC 3.51 Driver” (de 3.51 veranderd dan in jou versie nummer).
ASP.NET Tutorial: Databases en Datagrid
asp.NET, databases, datagrid
1. Inleiding
Wat is een IP adres: een adres dat aan je computer wordt toegewezen en waarmee je op het www kunt surfen (voorbeeld: 1.0.0.203).
Dit adres bevat een hele hoop informatie.
Een IP adres kan ook afzonderlijk worden gebruikt (niet in contact met het www) in een netwerk.
Elk netwerksysteem krijgt dan een bepaald aantal IP adressen toegewezen.
Uit deze IP adressen kunnen we een hele hoop informatie halen: ‘hoeveel PC’s kunnen er in het netwerk’, ‘is het een publiek of een privaat IP adres’…
In dit artikel ga ik dus bespreken HOE we deze gegevens uit het IP adres halen en wat deze gegevens beteken.
Ik zal afsluiten met een praktijktoepassing
2. De Klassen
Er zijn twee manieren om gegevens uit een IP adres te halen.
De eerste hiervan is via klassen (de andere ga ik straks bespreken).
Er zijn 5 verschillende klassen: A, B, C, D (en E).
E staat tussen haakjes omdat deze gereserveerd is voor toekomstig gebruik en hier wordt dus nog geen rekening mee gehouden.
Hoe kunnen we zien of een IP adres tot een bepaalde klasse behoord?
Zoals je weet bestaat een IP adres uit 4 keer 8 bits.
Elke bit kan een waarde 1 of 0 aannemen.
Zo kunnen we maximaal 4 keer 255 (11111111) vormen.
De klasse kan je afleiden door de binaire waarde te nemen van het betreffende IP adres.
IP1: 1.0.0.255 = 00000001.00000000.00000000.11111111
IP2: 205.103.2.3 = 11001101.01100111.00000010.00000011
IP Adressen
beveiliging, IP Adressen
1. Waarom deze tutorial?
Ikzelf vond het vreselijk ingewikkeld er achter te komen hoe dat geinclude allemaal in zijn werking gaat.
Ik heb opgezocht, geprobeerd, vragen gesteld op een forum, en geen, of slechte antwoorden gekregen.
Na het includen van 1 pagina, dacht ik bij mezelf, waarom geen pagina includen in een geinclude pagina…
Dus ik nam mijn stukje “script” en kopieerde het klakkeloos (en een klein beetje editen)… met een rare lay out als resultaat.
Dus daarom, hier even uitgelegd, hoe het WEL moet.
2. Include een pagina via ankers
<body>
<table>
<tr>
<td>
<a href="http://www.programmeer-tutorials.com/?pagina=home">home</a><br />
<a href="http://www.programmeer-tutorials.com/?pagina=forum">forum</a><br />
<a href="http://www.programmeer-tutorials.com/?pagina=gb">guestbook</a><br />
</td>
<td>
<?php
if (isset($_GET['pagina']))
{
if($_GET['pagina']=='home')
{
include($_GET['pagina'].'.php');
}
elseif($_GET['pagina']=='forum')
{
include($_GET['pagina'].'.php');
}
elseif($_GET['pagina']=='gb')
{
include($_GET['pagina'].'.php');
}
}
else{
include('home.php');
}
?>
</td>
</tr>
</table>
</body> |
Dit is gewoon een klein stukje script, waarmee je eerst gaat zien of er op een link is geklikt.
Dit via if(isset($_GET['pagina']).
Vervolgens gaan we zien, als deze pagina “home” is… dan includen we home.php!
Als deze pagina forum is… dan includen we forum.php!
enz…
Waarom gebruik ik nu niet gewoon:
<?php
if (!isset($_GET['pagina']))
$_GET['pagina'] = "home";
if(file_exists($_GET['pagina'].'.php'))
include($_GET['pagina'].'.php');
else
include("error.php");
?> |
Wel, dit is onveilig, en als je iets van webtechnieken, of php kent, kan je makelijk alle gegevens van iemands site afhalen.
Zoals passwoorden etc.
Dubbel Includen in PHP
include, PHP Tutorial, programmeer tutorial
1. Inleiding
Stel je wilt meer informatie over een bepaalde functie van php dan moet er toch een goede manier zijn om dat op te zoeken?
Een leuk voorbeeld hiervan is: “Wat zijn de parameters voor deze functie: ‘count’?”.
Een vraag die heel gemakellijk op te lossen is via
google.
Er is echter een site die noch sneller antwoord geeft op deze vraag, namelijk
php.net.
2. php.net inleiding
php.net is de ‘hoofdsite’ van PHP.
Hier staat onder andere informatie over php conferenties en mogelijke updates.
Dit is echter niet van belang bij het oplossen van basis problemen.
We nemen bovenstaand onderwerp (“Wat zijn de parameters voor deze functie: ‘count’?”) als voorbeeld.
Dit is namelijk heel simpel op te lossen.
php.net is namelijk op zo’n manier gemaakt dat je enkel in de url je ‘vraag’ samengevat moet meegeven en de site geeft al een oplossing.
We willen iets weten over de functie ‘count’, we zouden in de function list kunnen zoeken of via bovenstaande functionaliteit werken.
We gaan gewoon naar: http://www.php.net/count.
Daar aangekomen vinden we een hele uitleg over de functie count. Onder andere:
| int count ( mixed var [, int mode] ) |
Wat al die woorden (‘int’, ‘mixed’, ‘var’ en ‘mode’) bekenen leg ik strak uit.
Hierin kan je wel afleiden dat count 2 argumenten accepteert.
1 (var) is noodzakelijk (staat niet tussen [rechte haakjes]).
2 (mode) is niet noodzakelijk (staat tussen [rechte haakjes]).
Mocht je nu bv. een functie zoeken die betrekking heeft tot arrays.
Bv. een functie die een random element uit de array selecteert.
Dan zou je twee dingen kunnen doen:
- als een wilde iets rammen in de header en bij zoiets uitkomen: http://www.php.net/array_random_element en op de achtste plaats zijn functie tegenkomen.
- naar http://www.php.net/array gaan en daar de zoekfunctie (ctrl + f) van de browser gebruiken en het woord ‘rand’ zoeken.
Dan kom je op de pagina die de functie http://www.php.net/array_rand behandeld.
En dit is nu net de functie die je zoekt.
PHP.net manual
manual, PHP Tutorial, php.net
1. Inleiding
In javascript is het mogelijk je eigen objecten te maken.
Deze objecten kunnen data en methodes bevatten.
Deze data (die in ‘lid-variabelen’ steekt) en deze methodes (ook wel functies genaamd) noemt men de ‘properties’ van het object.
Een object is een soort blauwdruk waarin, als je het goed doet, duidelijk word beschreven ‘wat het doet’.
Dit klinkt op het begin nogal ingewikkeld maar eigenlijk valt het goed mee.
2. Properties van een object
De properties, waar ik het daarnet over had, kunnen worden aangeroepen op een heel simpele manier.
naam_van_het_object.naam_van_de_property |
Maar voor dat je ze kan aanroepen moet je ze eerst ‘aan maken’.
Hier zijn 2 manieren voor:
1) een object-initializer gebruiken.
2) een constructor maken.
Objecten, properties en prototypes in Javascript
javascript, oop, properties
In mijn vrije tijd heb ik mij bezig gehouden met verschillende hashmethodes te bestuderen. Dit artikeltje is het gevolg van deze kleine ’studie’. Niet alle hashmethodes zijn besproken en ik ben misschien enkele puntjes vergeten. Let aub niet op de gebruikte html want het is in word geschreven en gewoon omgezet naar een ‘webpagina’. Veel leesplezier!
Hoofdstuk 1: Hashen inleiding
1.1. Inleiding
Hashing (het hashen) is een van de meest complexe codeermethodes. Het wordt meestal gebruikt om wachtwoorden op te slaan. Een bekend voorbeeld hiervan is ‘hotmail’. Ze slaan niet de ‘echte’ wachtwoorden van de gebruikers op maar een gehashte versie. Stel dat ‘hotmail’ gebruik zou maken van het md5-algoritme en we hebben een account aangemaakt met de volgende gegevens:
| Email adres |
hash_test@hotmail.com |
| Wachtwoord |
test |
Dan zal ‘hotmail’ dit wegschrijven in een record in de gegevensbank (vanaf nu kortweg ‘database’). Maar vooraleer ‘wachtwoord’ wordt weggeschreven zal het ‘gehasht’ worden. Als we aannemen dat ‘hotmail’ gebruik maakt van het md5 algoritme zal dit er zo uitzien.
| Md5: test = 098f6bcd4621d373cade4e832627b4f6 |
De gehashte versie wordt weggeschreven naar de tabel en niet het originele wachtwoord ‘test’. Dit is ook de reden waarom ‘hotmail’ het originele wachtwoord nooit kan ‘teruggeven’ als je het kwijt bent. En dat je met je alternatieve email adres (dat optioneel in te vullen is) alleen een nieuw wachtwoord kan aanvragen. Zelfs ‘hotmail’ weet jouw wachtwoord niet. Hoe kunnen ze nu controleren of je, bij het inloggen, het juiste wachtwoord ingeeft: door de ingevoerde waarde ook te hashen en deze te vergelijken met de waarde die in de tabel staat.
Hashing, samen met encrypten, worden gebruikt om gevoelige data te beveiligen. Het enige verschil is dat bij hashing de originele waarde niet meer kan achterhaald worden, wat bij encrypten (door middel van een sleutel) wel kan.
Het eenvoudigste en bekendste voorbeeld van encrypten is het binaire talstelsel. Hier wordt een originele waarde (in dit geval enkel een numerieke waarde) omgezet naar een andere waarde. Als we niet weten dat we met het binaire talstelsel te doen hebben dan is het onmogelijk om de waarde te achterhalen. Nu is dit bij het binaire talstelsel eenvoudig te vinden en de sleutel is rap gevonden (namelijk de binaire waarde converteren naar de decimale waarde).
Hashing Artikel
beveiliging, coderen, cryptografie, hashing, md5, sha-1
1. Beginwoord
In de vorige tutorial werd er uitgelegd hoe je gegevens moet wegschrijven naar een extern bestand.
We hebben deze gegevens ook terug op het scherm laten verschijnen.
Dit alles in 1 programma. Nu gaan we 2 programma’s maken waarbij het een wegschrijft en het ander de gegevens leest.
2. Wat gaan we doen
Dit lijkt nu veel op elkaar trekken maar dat is het niet.
Als je de functie klakkeloos kopieert die de gegevens laat zien dan zal je een mooie error krijgen omdat er een aantal zaken niet zijn uitgevoerd.
Daarom dus deze tutorial: ik ga stap voor stap uitleggen wat je WEL moet doen.
Wegschrijven + Weergeven in C
bestanden, C Tutorial
1. Beginwoord
Deze tutorial handelt over de wegschrijven naar bestanden in C.
Je moet zeker alle vorige C tutorials goed gelezen, en ook toegepast hebben om deze te kunnen snappen.
Zeker die van functies.
Ik ga ook arrays gebruiken, om alles te vergemakelijken, en natuurlijk loopjes.
2. Wegschrijven intro
Wat is de bedoeling van wegschrijven naar bestanden.
Een voorbeeld:
Ik wil een klantensysteem maken voor een winkel, de winkelier moet makelijk nieuwe klanten kunnen toevoegen en ook een lijst kunnen bekijken met al zijn klanten.
Dan heb je niets aan een simpele variabele, want bij het afsluiten van programma vervalt deze.
Je moet dus iets gaan wegschrijven naar een extern bestand.
Dit extern bestand kan je dan aanroepen wanneer je wilt, en hierin staan gegevens.
Ik ga in deze tutorial het “binair wegschrijven” bespreken.
De reden hiervoor is omdat we dan later nog iets met gegevens kunnen doen.
Anders is het gewoon data ergens insteken en laten zitten.
Wegschrijven naar bestanden in C
bestanden, C Tutorial
1. Beginwoord
Deze tutorial handelt over de arrays in C.
Het is een vrij simpele tutorial.
Hij is ook zeer handig, want bij de volgende tutorial (wegschrijven naar bestanden) ga je arrays ZEKER nodig hebben.
2. Arrays intro
Eerst en vooral, voor degeen die nieuw zijn in het hele programeergedoe, wat is een array?
Een array is een rij, hierin zitten integers of characters opgeslagen.
Deze rij wordt gezien als 1 variabele, met verschillende onderdelen.
Je kan het misschien best vergelijken met een boekenkast.
Elke lade is 1 rij, en in elke lade zitten verschillende boeken van een bepaald soort.
lade1 (of rij1) bevat dan harry potter boeken.
lade2 (of rij2) bevat dan Lord of the Rings boeken.
enz…
Ik verzeker je, het zal je allemaal duidelijker worden als je het eenmaal toepast.
Arrays in C
arrays, C Tutorial
1. Beginwoord
Deze tutorial handelt over de herhalingsstructuren.
De herhalingsstructuren die ik hier ga bespreken zijn eigelijk hetzelfde als in PHP, of C++ en andere.
Maar voor ze toch eens in een C programma te zien… hier deze tutorial
2. Herhalings Structuren intro
Wat is een herhalingsstructuur?
Een herhalingsstructuur is een klein stukje van je programma waar je een bepaalde actie gaat herhalen.
IPV een vraag 100 keer te stellen in je programma, ga je dit 1x doen en 100 keer herhalen.
Bv. Ik wil dat je gegevens over mensen kan ingeven, en dat het ingeven stopt als je 0 ingeeft.
Een uitgewerkt voorbeeld vind je hieronder, bij de
do{}while() strutuur.
3. for()
Voor het voorbeeldje hierboven kan ik een for structuur gebruiken, maar het zou vrij onhandig zijn.
En ook onlogisch.
De for structuur gebruik je (meestal) als je een vooraf bepaald aantal gegevens wilt laten ingeven/weergeven.
Dit vooraf bepaald getal kan een integer (bv. 5) zijn of een variabele (bv. de variabele ‘j’ die de waarde 7 bevat.
Algemeen:
#include <stdio.h>
void main(void){ //begin vd code
int i; //de integer i declareren
for(i=beginwaarde_van_i; i<eindwaarde_van_i_plus_1; wat_er_gedaan_moet_worden){
doe_iets;
}
}
|
Dit ziet er natuurlijk niet uit, dus daarom een uitgewerkt voorbeeld.
#include <stdio.h>
void main(void){ //begin vd code
int i; //de integer i declareren
for(i=0; i<6; i++){
printf("%s %d %s", "De waarde van i is nu: ", i, "\n");
}
}
|
Dit retoruneert.
De waarde van i is: 0
De waarde van i is: 1
De waarde van i is: 2
De waarde van i is: 3
De waarde van i is: 4
De waarde van i is: 5 |
Je laat hem tot 5 tellen kun je zeggen.
Dus eerst geef je een waarde aan i (i=0).
Dan ga je zeggen waneer hij moet stoppen met tellen (i<6).
En dan ga je zeggen wat er moet gebeuren elke keer de actie wordt herhaald (i++: 1 waarde bij i optellen, elke keer het wordt herhaal).
En dan voer je nog iets uit in de herhalingsstructuur.
Herhalingsstructuren (iteratie) in C
C Tutorial, iteratie