Ben ik op de juiste weg.
ik ben nieuw met PHP. nu ben ik bezig een facturatie systeem/klantbestand aan het bouwen.
Ik vraag me nu af of ik wel op de juiste manier werk.
De code die ik nu heb, is gekoppeld aan de database en haalt het klantbestand op. Vervolgens geeft hij dit in een tabel weer.
het is straks de bedoeling dat de layout aangepast kan worden. Dit is me echter nog niet helemaal gelukt.
Hier de code.
Code (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
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
<?php
require ("connect.php");
$DB = mysql_connect($DB_HOST, $DB_USER, $DB_PASSWORD);
mysql_select_db($DB_BASE, $DB);
Echo "<a href=Main.php>Home</a>";
Echo "<br><br>";
echo "<LINK HREF=\"stylesheet.css\" REL=\"stylesheet\" TYPE=\"text/css\">";
$result = mysql_query("SELECT * FROM klant_bestand ORDER BY id")
or die(mysql_error());
echo "<table border='1'>";
echo
'<tr>
<td id="klant">Klantnummer</td>
<td id="klant">Bedrijfsnaam</td>
<td>Voornaam</td>
<td>Achternaam</td>
<td>Contactpersoon</td>
<td>straatnaam</td>
<td>Huisnummer</td>
<td>Toevoeging</td>
<td>Postcode</td>
<td>Woonplaats</td>
<td>Land</td>
</tr>';
while($row = mysql_fetch_array( $result )) {
echo "<tr><td>";
echo $row ['ID'];
echo "</td><td>";
echo $row ['Bedrijfsnaam'];
echo "</td><td>";
echo $row ['Voornaam'];
echo "</td><td>";
echo $row ['Achternaam'];
echo "</td><td>";
echo $row ['Contactpersoon'];
echo "</td><td>";
echo $row ['Straatnaam'];
echo "</td><td>";
echo $row ['Huisnummer'];
echo "</td><td>";
echo $row ['Toevoeging'];
echo "</td><td>";
echo $row ['Postcode'];
echo "</td><td>";
echo $row ['Woonplaats'];
echo "</td><td>";
echo $row ['Land'];
echo "</td></tr>";
}
echo "</table>";
?>
require ("connect.php");
$DB = mysql_connect($DB_HOST, $DB_USER, $DB_PASSWORD);
mysql_select_db($DB_BASE, $DB);
Echo "<a href=Main.php>Home</a>";
Echo "<br><br>";
echo "<LINK HREF=\"stylesheet.css\" REL=\"stylesheet\" TYPE=\"text/css\">";
$result = mysql_query("SELECT * FROM klant_bestand ORDER BY id")
or die(mysql_error());
echo "<table border='1'>";
echo
'<tr>
<td id="klant">Klantnummer</td>
<td id="klant">Bedrijfsnaam</td>
<td>Voornaam</td>
<td>Achternaam</td>
<td>Contactpersoon</td>
<td>straatnaam</td>
<td>Huisnummer</td>
<td>Toevoeging</td>
<td>Postcode</td>
<td>Woonplaats</td>
<td>Land</td>
</tr>';
while($row = mysql_fetch_array( $result )) {
echo "<tr><td>";
echo $row ['ID'];
echo "</td><td>";
echo $row ['Bedrijfsnaam'];
echo "</td><td>";
echo $row ['Voornaam'];
echo "</td><td>";
echo $row ['Achternaam'];
echo "</td><td>";
echo $row ['Contactpersoon'];
echo "</td><td>";
echo $row ['Straatnaam'];
echo "</td><td>";
echo $row ['Huisnummer'];
echo "</td><td>";
echo $row ['Toevoeging'];
echo "</td><td>";
echo $row ['Postcode'];
echo "</td><td>";
echo $row ['Woonplaats'];
echo "</td><td>";
echo $row ['Land'];
echo "</td></tr>";
}
echo "</table>";
?>
alvast bedankt voor jullie reactie.
Groet, Vincent
Ik heb hier ooit een topic over gemaakt die je als je slim bent even kan doorlezen.
Link : http://www.phphulp.nl/php/tutorial/php-algemeen/hoe-zet-je-iets-correct-op-phphulp/731/ . Let vooral op de voorbeelden.
- Gebruik geen wildcard (*) in je sql
- gebruik mysql_fetch_assoc() idpv _fetch_array
- Voor PHP best single quotes (') en voor html double quotes (")
Wat word met de Wildcard bedoeld. Kan ik die er uithalen? of moet die vervangen worden door wat anders.
SELECT veld1, Veld2, Veld3 FROM ...
$result = mysql_query("SELECT * FROM klant_bestand ORDER BY id");
Waarom gebruik je het niet:
Je haalt overbodige rijen op .
En het is moeilijker om te bepalen welke rijen je wilt gaan gebruiken omdat je ze dan of moet onthouden of moet gaan zoeken in de database.
Gewijzigd op 25/09/2011 14:12:07 door Jordi Kroon
Hoe kan ik dan het beste te werk te gaan?
Voorbeeld:
<td id="klant">Klantnummer</td>
echo '<tr><td id ="klant>';
echo $row ['ID'];
echo '</td><td id="klant">';
vervolgens dan in CSS td#klant uitlijnen?
Rede 1:
De snelheid, zoals jordi hierboven als zegt worden nu alle rijen opgehaald, dit gaat ten koste van de snelheid.
Rede 2:
SQL staat voor Structured Query Language. Wat wil dit zeggen? Wel je moet alles typen wat er moet gebeuren, stel nu dat je een wildcard gebruikt dan weet je 2 maanden later niet meer wat je query juist ophaalt, nu weet je dat wel.
Inderdaad, PHP dient om te communiceren met se server en HTML verzorgd samen met css de opmaak. Het opmaken van een pagina is dus net hetzelfde met of zonder PHP.
Gewijzigd op 25/09/2011 14:16:46 door Jasper DS
Code:
$result = mysql_query("SELECT ID, Bedrijfsnaam, FROM klant_bestand ORDER BY id")
or die(mysql_error());
geeft;
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'FROM klant_bestand ORDER BY id' at line 1
Let ook op je hoofdletter gebruik.
Bij de SELECT gebruik je ID met hoofdletters en bij de ORDER BY gebruik je id met kleine letters. Dit kan verwarrend zijn voor je zelf met complexe queries.
en nog steeds de dingen die Jasper al zei:
- Gebruik geen or die() als foutafhandeling van de query.
- gebruik mysql_fetch_assoc() idpv _fetch_array
- Voor PHP best single quotes (') en voor html double quotes (")
Gewijzigd op 26/09/2011 17:25:06 door Maikel B
Weer een stap dichterbij.
andere punten gelijk aangepast in ieder script.
Groet, vincent