ik heb zelf nog niet zoheel veel verstand van php en wil het graag ook leren.
maar ik kom er nu egt niet meer uit zouden jullie me kunne helpen zodat ik me database krijg te zien.
dit is het script.
<?php
$user = "****";
$pass = "*******";
$connection = mysql_connect('localhost',$user,$pass);
mysql_select_db("mijn_klas") or die("kan database niet openen");
@wout: nou krijg ik deze fouten te zien.
Warning: mysql_query(): supplied argument is not a valid MySQL-Link resource in C:\Program Files\xampp\htdocs\klasoverzicht.php on line 8
Warning: mysql_numrows(): supplied argument is not a valid MySQL result resource in C:\Program Files\xampp\htdocs\klasoverzicht.php on line 9
// Maak verbinding met Database.
$connection = mysql_connect($mysql_server,$mysql_user,$mysql_pass)
or die ('Cannot connect to MySQL-Server: '.$mysql_server);
// Denk om het gebruik van under-score('_'), dat kan problemen geven.
#mysql_select_db("mijn_klas") or die("kan database niet openen");
# or die('ERROR: '.mysql_error());
// Voer query uit, LET OP, ook databse in query meegenomen.
$query = "SELECT * FROM mijn_klas.studenten";
// Je Connection-handler/pointer/cursos klopt niet!!!
#$resultaat = mysql_query($query, $conn);
$resultaat = mysql_query($query, $connection)
// MAAK GEBRUIKT VAN ERROR HANDLING
or die ('Error in query:'. mysql_error());
// Loop alle resultaat rijen af. (DATABLOCK)
for ($i=0; $i<mysql_num_rows($resultaat); $i++) {
$kolommen = mysql_fetch_array($resultaat, MYSQL_BOTH);
// kolommen index of naam, mogelijk gemaakt door MYSQL_BOTH.
echo $kolommen[0]." - ".$kolommen[1]."<br />\n";
}
Jim, hij maakte gebruik van mysql_error, alleen stond het op de verkeerde plek, was me niet opgevallen.
En commentaar heeft naar mijn idee helemaal niks met debuggen te maken.
Maar heel nuttig als je je script na 2 maanden nog eens wilt wijzigen. zeker als je nog niet erg ervaren bent, (en ook als wel) zeer belangrijk, zo kan je je code voor jezelf en andere bergrijpelijk maken/houden.
En zoals eerder gezegd, errorhandling gebruiken, en maak debuggers aan.
bijv:
<?php
$mysql_link = mysql_connect('localhost','','') or die ('ERROR CONNECTING TO DATABASE SERVER');
// Hiermee kan je zien of er iets wordt uitgevoerd.
var_dump($mysql_link);
// Controleer of er een verbinding is.
if ($mysql_link) {
mysql_close($mysql_link);
echo "Closed.";
} else {
echo "No cennection due to error.";
}
?>
Het is wel even (VEEL) werk, maar zeker niet onnodig!
Commentaar is op zich wel goed, maarehh.. overdrijf je niet een beetje met het commentaar, het is niet een goede gewoonte om "meer" commentaar dan code in je script te zetten.
Wat bij mijzelf zo'n beetje de gewoonte is, is per blokje neerzetten wat het doet.
// Maak verbinding met Database.
$connection = mysql_connect($mysql_server,$mysql_user,$mysql_pass)
or die ('Cannot connect to MySQL-Server: '.$mysql_server);
// Voer query uit, LET OP, ook databse in query meegenomen.
$query = "SELECT * FROM mijn_klas.studenten";
// Voer query uit.
$resultaat = mysql_query($query, $connection)
or die ('Error in query:'. mysql_error());