Hallo,
$anzahl=mysql_query("SELECT * FROM $tabellehits where bereich='$woher' and monat='$akt_monat' and jahr='$akt_jahr'") or die("SELECT ERROR 30");
Woher weißt Du denn schon vorher, dass hier Fehler 30 auftritt? Schau Dir mal http://www.php.net/manual/de/function.mysql-errno.php und http://www.php.net/manual/de/function.mysql-error.php
if (mysql_num_rows($anzahl)==0){
mysql_query("INSERT INTO $tabellehits SET monat='$akt_monat', jahr='$akt_jahr', bereich='$woher'") or die("INSERT Error 31");
}
else{
mysql_query("UPDATE $tabellehits SET treffer=treffer+1 where monat='$akt_monat' and jahr='$akt_jahr' and bereich='$woher'") or die("INSERT Error 2");
}
Ich hoffe mal sehr, dass dieser Code nicht so in deiner Seite steht! Wenn doch, dann kann man Dir über die Paramter komplette mySQL-Anweisungen unterschmuggeln, also mit einem einfachen Link Deine gesamte DB löschen.
Lesestoff:
Prüfe importierte Parameter. Traue niemandem. http://www.php-faq.de/q/q-sicherheit-parameter.html
Wie unterscheide ich böse Variablen von guten? http://www.php-faq.de/q/q-security-variablen.html
[1] Aufgrund Deiner augenscheinlichen Unkenntnis einiger Grundlagen ist PHP für Dich nicht geeignet. Siehe Archiv.
Ja, da fehlt mir noch sehr viel, deshalb frage ich ja... schade nur, dass etwas deshalb gleich ungeeignet ist...
Du hast Dir gleich ein viel zu großes Ziel gesetzt. Erst PHP, dann mySQL. ;)
Gruss, Thoralf
Sic Luceat Lux!