hi !
ich habe ein ziemliches performanceproblem und hab leider keinen schimmer woran es liegen könnte. habe ziemlich viel im internet gesucht und keine lösung gefunden. alles, was ich gefunden habe, ist, dass man sich bei bis zu ein paar millionen datensätzen in einer tabelle keine großen sorgen machen brauchen soll - ja toll, meine tabelle hat aber "nur" < 425.000 datensätze.
die tabelle ( loctbdu ) sieht wie folgt aus:
locId, country, city, postalCode, latitude, longitude sind die spalten, also 6 an der zahl.
und datensätze gibt es, wie schon erwähnt < 425.000.
der php code mit der abfrage:
$cncheck, $cnsuducheck, usw. sind ländernamen, die über ein formular kommen / übergeben werden.
in der tabelle laenderkuerzel sind ländername und kürzel in separaten spalten gespeichert.
es werden also über ein formular ländernamen abgefragt in der tabelle laenderkuerzel sich das kuerzel geschnappt und mit diesem in der tabelle nach allen städten des dazugehörigen landes geholt.
angezeigt werden die städte dann in vier select listen, die wie folgt aussehen:
wenn die seite nun lädt, braucht es ewig bis sie tatsächlich vollständig geladen ist und das laden stockt immer bei den select listen.
ich wäre so dankbar für ideen, woran das liegen könnte !! bekomm das schon seit einer woche nich hin ..
vielen dank im voraus und einen schönen tag allen !
ich habe ein ziemliches performanceproblem und hab leider keinen schimmer woran es liegen könnte. habe ziemlich viel im internet gesucht und keine lösung gefunden. alles, was ich gefunden habe, ist, dass man sich bei bis zu ein paar millionen datensätzen in einer tabelle keine großen sorgen machen brauchen soll - ja toll, meine tabelle hat aber "nur" < 425.000 datensätze.
die tabelle ( loctbdu ) sieht wie folgt aus:
locId, country, city, postalCode, latitude, longitude sind die spalten, also 6 an der zahl.
und datensätze gibt es, wie schon erwähnt < 425.000.
der php code mit der abfrage:
PHP:
$sqlcity="SELECT laenderkuerzel.countryname, loctbdu.country, loctbdu.city FROM laenderkuerzel, loctbdu WHERE laenderkuerzel.countryname='".$cncheck."' and loctbdu.country=laenderkuerzel.alphadu";
$db_ergcity=mysql_query($sqlcity);
$sqlcitysudu="SELECT laenderkuerzel.countryname, loctbdu.country, loctbdu.city FROM laenderkuerzel, loctbdu WHERE laenderkuerzel.countryname='".$cnsuducheck."' and loctbdu.country=laenderkuerzel.alphadu";
$db_ergcitysudu=mysql_query($sqlcitysudu);
$sqlcitybi="SELECT laenderkuerzel.countryname, loctbdu.country, loctbdu.city FROM laenderkuerzel, loctbdu WHERE laenderkuerzel.countryname='".$cnbicheck."' and loctbdu.country=laenderkuerzel.alphadu";
$db_ergcitybi=mysql_query($sqlcitybi);
$sqlcitybidu="SELECT laenderkuerzel.countryname, loctbdu.country, loctbdu.city FROM laenderkuerzel, loctbdu WHERE laenderkuerzel.countryname='".$cnbiducheck."' and loctbdu.country=laenderkuerzel.alphadu";
$db_ergcitybidu=mysql_query($sqlcitybidu);
$cncheck, $cnsuducheck, usw. sind ländernamen, die über ein formular kommen / übergeben werden.
in der tabelle laenderkuerzel sind ländername und kürzel in separaten spalten gespeichert.
es werden also über ein formular ländernamen abgefragt in der tabelle laenderkuerzel sich das kuerzel geschnappt und mit diesem in der tabelle nach allen städten des dazugehörigen landes geholt.
angezeigt werden die städte dann in vier select listen, die wie folgt aussehen:
PHP:
echo "<p style='position:absolute; top:75px; left:7px; font-family: Arial, Helvetica, sans-serif; font-size : 14.2px; font-weight:;'>
Von:
</p>
<div class='styled-select' style='position:absolute; display:block; top: 83px; left:60px;'>
<select class='' style='' name='vonabfra'>";
while($zeilecity = mysql_fetch_array( $db_ergcity, MYSQL_ASSOC))
{
echo "<option>".$zeilecity['city']."</option>";
}
echo "</select>
</div>";
wenn die seite nun lädt, braucht es ewig bis sie tatsächlich vollständig geladen ist und das laden stockt immer bei den select listen.
ich wäre so dankbar für ideen, woran das liegen könnte !! bekomm das schon seit einer woche nich hin ..
vielen dank im voraus und einen schönen tag allen !