Ophalen uit database
De tweede tabel heeft de naam city met daarin een kolom met de naam countryID en cityname, deze gevuld met nummers en plaatsnamen.
Als ik deze met SELECT wil oproepen in php (zie hieronder)krijg ik steeds dezelfde foutmelding nl. De sql-query is niet uitgevoerd, het script wordt afgebroken.
Volgens mij moet ik alles toch goed gedaan hebben. Of zit ik weer helemaal fout?
<html>
<head><title>PHP met MySQL</title></head>
<body>
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
2
3
4
5
6
7
8
9
10
11
12
13
14
15
<?php
$host="localhost";
$gebruiker="root";
$wachtwoord="";
error_reporting(0);
$verbinding=mysql_connect($host,$gebruiker,$wachtwoord);
if (!$verbinding) die ("<br>Kan geen verbinding maken met de database,
het script wordt afgebroken");
$dbnaam="global";
$sql="SELECT * city";
$result = mysql_db_query($dbnaam,$sql,$verbinding)
or die ("De sql-query is niet uitgevoerd, het script wordt afgebroken");
mysql_close($verbinding);
?>
$host="localhost";
$gebruiker="root";
$wachtwoord="";
error_reporting(0);
$verbinding=mysql_connect($host,$gebruiker,$wachtwoord);
if (!$verbinding) die ("<br>Kan geen verbinding maken met de database,
het script wordt afgebroken");
$dbnaam="global";
$sql="SELECT * city";
$result = mysql_db_query($dbnaam,$sql,$verbinding)
or die ("De sql-query is niet uitgevoerd, het script wordt afgebroken");
mysql_close($verbinding);
?>
</body></html>
je vergeet een database te selecteren. mysql_select_db( db_name, connection );
Maar over dat selecteren van de Database......
Dat doe ik toch met dit gedeelte hieronder? Hierin geef ik eerste aan dat $dbnaam = "global" vervolgens komt dat weer terug in $result:
$dbnaam="global";
$sql="SELECT * city";
$result = mysql_db_query($dbnaam,$sql,$verbinding)
Verder raad ik aan om de PHP-functies van MySQLi te gebruiken i.p.v. die van MySQL.
Gewijzigd op 27/08/2014 20:40:22 door - Ariën -
Ik mis hier iets vrij essentieels.
Wat mis je dan Ger, ik ben heel benieuwd.
FROM ... (WHERE)
Ik heb FROM en WHERE toegepast en krijg nu geen foutmelding meer maar een leeg scherm. Dan lijkt het erop dat de tabel 'city' leeg is. Maar als ik in phpMyAdmin selecteer krijg ik keurig het lijstje op het scherm. Waarom dan niet via dit PHP script?
Na het succesvol uitvoeren van je connectie en je query doe je niks meer in je script...
Gewijzigd op 27/08/2014 21:41:49 door - Ariën -
Je hebt gelijk. Ik heb een gedeelte laten vallen om de fout van de verbinding eerst te achterhalen. Ga morgen weer verder. Jullie horen nog van me. Tot zover weer bedankt.
Naar gelang kan je ook met while() alle data in een loop laten tonen.
Of je hebt van (enkele) bovengenoemde drie meer dan één.
Daarom dien je altijd met de juiste server te verbinden en in je queries aan te geven om welke database + tabel het gaat.
omdat er echter vaak binnen één database gewerkt wordt kun je met mysql_select_db() aangeven welke database standaard geselecteerd is. Geef je dan dus geen database naam op pakt ie de als standaard ingestelde.
Na het selecteren van de database kun je dan de query inkorten tot:
Gewijzigd op 27/08/2014 22:52:01 door Frank Nietbelangrijk
Quote:
This function has been DEPRECATED as of PHP 5.3.0.
Gewijzigd op 28/08/2014 11:01:40 door - Ariën -
Quote:
4.0.6 This function is deprecated, do not use this function. Use mysql_select_db() and mysql_query() instead.
maar pas sinds 5.3:
Quote:
5.3.0 This function now throws an E_DEPRECATED notice.
Maar dat komt omdat de error_level E_DEPRECATED pas in 5.3 geïntroduceerd is.
http://php.net/manual/en/migration53.deprecated.php