Article View: be.comp.programming
Article #14959Re: mysql en cgi
From: Bruno Lowagie
Date: Wed, 13 Dec 2000 09:49
Date: Wed, 13 Dec 2000 09:49
77 lines
3276 bytes
3276 bytes
Tijl Vercaemer wrote:
>
> Ik zou de informatie (een verzameling links) uit een mysql database op
> een website moeten krijgen. Ik dacht dat cgi de meest aangewezen
> methode is, maar ik weet helemaal niets over cgi.
CGI is hopeloos verouderd en zuipt meestal resources.
> Waar kan ik de nodige
> documentatie vinden. Enkele voorbeeldscriptjes om informatie uit een
> mysqldatabase te halen zouden ook handig kunnen zijn.
Gebruik bvb php:
HTML>
<HEAD>
<TITLE>Voorbeeldje</TITLE>
</HEAD>
<body bgcolor="#008080" link="#FFFFFF" vlink="#FFFFFF" alink="#FFFFFF"
TEXT="#FFFFFF">
<div align="center">
<H1>Overzicht van alle records</H1>
<TABLE>
<?php
# (1) lezen van het paswoord uit de paswoord file
$file = fopen("../../.database", "r");
$passwd = fread($file, filesize("../../.database"));
fclose($file);
# (2) maken van de connectie naar de database
$con = mysql_connect("mydatabaseURL.com", "myYsername", $passwd);
# (3) opstellen en uitvoeren van de query
$query = "SELECT * FROM myTabel ORDER by ID";
$result = mysql_db_query("myDatabase", $query, $con);
# (4) overlopen van de resultaten
while ($row = mysql_fetch_array($result)) {
?>
<TR>
<TD>
<!-- (5) tonen van ieder record -->
<A HREF="myItem.php3?id=<?php echo $row["id"]; ?>">
<B><?php echo $row["naam"]; ?></B></A>
</TD>
<TD>
<?php echo $row["beschrijving"]; ?>
</TD>
</TR>
<?php
}
# (6) sluiten van de database
mysql_close($con);
?>
</TABLE>
</div>
<BODY>
</HTML>
Hierin zie je:
(1) dat ik het database paswoord ergens in een file staan heb die niet
via www toegankelijk is. Ik wil immers het database paswoord nergens
in mijn code.
(2) ik maak een connectie naar mijn database.
(3) ik stel een query samen en voer hem uit.
(4) ik loop over de resultaten.
(5) ik toon een resultaat dat bestaat uit een aanklikbare naam
die verwijst naar een pagina myItem.php3 en waaraan een id meegegeven
wordt. Deze pagina kan bvb meer info tonen over het record met het
opgegeven id. Ernaast staat een korte beschrijving van het item.
(6) de databaseconnectie wordt afgesloten.
Dit kan allemaal nog veel ingewikkelder, maar misschien moet
je maar eens beginnen met dit eenvoudig voorbeeldje.
Tip: bij http://www.mycgiserver.com/ kun je gratis en reclameloze
ruimte krijgen waar je PHP-scripts mag draaien.
Technical Details
Message-ID:
<3A374620.EB9EA8B2@rug.ac.be>Path:
arc1-ca.pugleaf.net!supernews.google.com!sn-xit-02!supernews.com!news-x.support.nl!newsfeed.icl.net!ldn-newsfeed.speedport.net!newsfeed.speedport.net!naxos.belnet.be!news.belnet.be!inf6serv.rug.ac.be!not-for-mailReferences:
<3A373E97.E7B40FCA@rug.ac.be>Show Full Headers
Complete Article Headers
X-Google-Language: DUTCH,ASCII-7-bit X-Google-Thread: fcea4,aba600e6d027ebc1 X-Google-Attributes: gidfcea4,public X-Google-ArrivalTime: 2000-12-13 02:00:03 PST Path: arc1-ca.pugleaf.net!supernews.google.com!sn-xit-02!supernews.com!news-x.support.nl!newsfeed.icl.net!ldn-newsfeed.speedport.net!newsfeed.speedport.net!naxos.belnet.be!news.belnet.be!inf6serv.rug.ac.be!not-for-mail From: Bruno Lowagie <bruno.lowagie@rug.ac.be> Newsgroups: be.comp.programming Subject: Re: mysql en cgi Date: Wed, 13 Dec 2000 10:49:20 +0100 Organization: Universiteit Gent Lines: 77 Message-ID: <3A374620.EB9EA8B2@rug.ac.be> References: <3A373E97.E7B40FCA@rug.ac.be> NNTP-Posting-Host: catch22.rug.ac.be Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit X-Mailer: Mozilla 4.73 [en] (WinNT; I) X-Accept-Language: nl-BE,en