probleem met mysql_connect
Ik krijg deze melding van Firefox "De verbinding werd geherinitialiseerd"
Als ik via MySQL-console inlog, is er geen probleem.
(ik heb uitzonderingen gemaakt in m'n firewall)
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
<body>
<?php // Script 12.1 - mysql_connect.php
// This script connects to the MySQL server.
// Attempt to connect to MySQL and echo messages:
if ($dbc = mysql_connect('localhost', 'root', '**********')) {
echo '<p>Succesfully connected to MySQL!</p>';
mysql_close(); // Close the connection.
} else {
echo '<p style="color:red;">Could not connect to MySQL.</p>';
}
?>
</body>
</html>
<?php // Script 12.1 - mysql_connect.php
// This script connects to the MySQL server.
// Attempt to connect to MySQL and echo messages:
if ($dbc = mysql_connect('localhost', 'root', '**********')) {
echo '<p>Succesfully connected to MySQL!</p>';
mysql_close(); // Close the connection.
} else {
echo '<p style="color:red;">Could not connect to MySQL.</p>';
}
?>
</body>
</html>
Gewijzigd op 27/12/2010 17:57:40 door Mark de Grebber
En met andere browsers?
MySQL werkt op de server. De webbrowser van de gebruiker zou geen verschil moeten maken.
Ik log in via wamp localhost., als ik localhost hier in 't script varvang voor 127.0.0.1
blijft de melding gelijk
PHPMyAdmin werkt ook (misschien heb je iets aan die info).
Gewijzigd op 27/12/2010 18:03:57 door Mark de Grebber
Als je dan nog errors krijgt, heeft het te maken met de mysql en niet met je code
Ik heb Workdpress geinstalleerd, en een database aangemaakt.
Zou dat problemen kunnen opleveren ?
Gewijzigd op 27/12/2010 18:08:14 door Mark de Grebber
Die lege pagina is voor de testings he
hoe test ik de verbinding ?
Krijg je enige errors? Indien niet, dan is je verbinding oke.
True -> Dan is het goed gelukt.
False -> Dan is het niet gelukt.
Zo gaat dat bij alle mysql_ functies. Als je daar dus op test:
Code (php)
1
2
3
4
5
6
7
8
9
10
2
3
4
5
6
7
8
9
10
<?php
$mysql = mysql_connect('localhost', 'root', 'wachtwoord');
if($mysql) { //Dit betekend als hij true is. Je kan ook $mysql == true neerzetten.
echo 'Het werkt!';
}
else { //Als het niet goed gelukt is en dus false gereturned word
echo 'Jij hebt pech, het werkt niet!';
}
?>
$mysql = mysql_connect('localhost', 'root', 'wachtwoord');
if($mysql) { //Dit betekend als hij true is. Je kan ook $mysql == true neerzetten.
echo 'Het werkt!';
}
else { //Als het niet goed gelukt is en dus false gereturned word
echo 'Jij hebt pech, het werkt niet!';
}
?>
@internet verslaafde, je moet wel de juiste methode aanleren. or die is fout. Jij gaat toch ook niet dood als je iets fout doet? En daarnaast moet je altijd een mooie foutafhandeling maken. Die van mij kan ook nog beter. Je krijgt dan zoiets: http://snipplr.com/view/45252/goede-foutafhandeling-mysql/
Gewijzigd op 27/12/2010 18:14:35 door Wouter J
Toevoeging op 27/12/2010 18:16:42:
Ok, Ik krijg "het werkt" dus mysql_connect == TRUE als ik t goed begrijp
Toevoeging op 27/12/2010 18:22:47:
Doordat de verbinding met mysql direct weer verbroken word
na de "succesfully connected" melding in het het script
krijg ik deze melding niet te zien.
waarom zou dat op deze manier uitgelegd worden in het boek (enig idee ?)
I.i.g. Bedankt weer, voor de snelle hulp, en een goed nieuw jaar toegewenst alvast
aan iedereen op dit forum.
Gewijzigd op 27/12/2010 18:33:27 door Mark de Grebber
Dat gebruik ik, zodat de connectie open blijft
Sluit m later wel af met mysql_close als je m niet meer nodig hebt (dat is mij aangeleerd) ;)
Gewijzigd op 27/12/2010 19:29:41 door Maestro Roboroads
mysql_close() is eigenlijk onnodig
Nadeel is simpel: de meest gangbare instelling van MySQL is 100 concurrent connections (default). Met pconnect houdt je de verbindingen open, dus je snapt zelf al wat er gebeurt als je 101 users online hebt: 100 genieten van je site en 1 zit tegen een scherm aan te kijken waar op staat dat hij zometeen maar even op F5 moet duwen om te kijken of de DB server tijd voor m heeft.
Gezien de gemiddelde tijd dat normaal een verbinding open staat (de duur van het parsen van je script) laten we zeggen 0,05 sec. Dan kan je dus veel meer users aan, omdat er zelden 100 tegelijkertijd in die 0,05 sec een verbinding willen maken.
Vergeet gewoon pconnect.
Bovendien kan mysql_close de verbinding van mysql_pconnect NIET sluiten...
Gewijzigd op 27/12/2010 20:00:22 door Niels K
Dus je houd het beter op mysql_connect() :)
Zoals ik probeerde te zeggen ;)
weet ik dat ook weer =D