parse error warum

tobbimann

Mitglied
Guten Morgen!

Ich blicke leider nicht ganz durch, wo hier der Fehler sein soll.
Ich kriege immer ein parse error. Guckt euch mal die angehängte pdf an.
Ich hab die Zeile markiert wo der fehler sein soll
 
Zuletzt bearbeitet:
Kurz und bündig. Du hast in der Zeile davor eine } zuviel. Sieht man auch an der automatischen Einrückung deines Editors. Das elseif ist eine Ebene weiter vorne, als die anderen.
 
Ne, das ist es leider nicht. Auch wenn ich die Klammer wegnehme ändert sich nichts. Ich habe die Klammersetzung auch schon genau überprüft. Da stimmt alles.
 
Versuch mal folgendes. Es kommt zwar kein Parse Error mehr, ich kann jetzt aber leider nicht testen ob die Funktionalität noch gegeben ist:

PHP:
if ($_GET['letter'] != "") {
if ($_GET['letter'] =="num") {
if ($_GET['leftout'] == "nein") {
	switch($_GET['order']) {
	case "film_asc": $sql = 'SELECT * FROM `filmdb` WHERE vorhanden="ja" AND Film REGEXP "^[[:digit:]]{1}" ORDER BY `Film` ASC'; break;
	case "film_desc": $sql = 'SELECT * FROM `filmdb` WHERE vorhanden="ja" AND Film REGEXP "^[[:digit:]]{1}" ORDER BY `Film` DESC'; break;
	case "jahr_asc": $sql = 'SELECT * FROM `filmdb` WHERE vorhanden="ja" AND Film REGEXP "^[[:digit:]]{1}" ORDER BY `Jahr` ASC'; break;
	case "jahr_desc": $sql = 'SELECT * FROM `filmdb` WHERE vorhanden="ja" AND Film REGEXP "^[[:digit:]]{1}" ORDER BY `Jahr` DESC'; break;
	case "vorhanden_asc": $sql = 'SELECT * FROM `filmdb` WHERE vorhanden="ja" AND Film REGEXP "^[[:digit:]]{1}" ORDER BY `vorhanden` ASC'; break;
	case "vorhanden_desc": $sql = 'SELECT * FROM `filmdb` WHERE vorhanden="ja" AND Film REGEXP "^[[:digit:]]{1}" ORDER BY `vorhanden` DESC'; break;
	case "cds_asc": $sql = 'SELECT * FROM `filmdb` WHERE vorhanden="ja" AND Film REGEXP "^[[:digit:]]{1}" ORDER BY `CDs` ASC'; break;
	case "cds_desc": $sql = 'SELECT * FROM `filmdb` WHERE vorhanden="ja" AND Film REGEXP "^[[:digit:]]{1}" ORDER BY `CDs` DESC'; break;
	case "qualitaet_asc": $sql = 'SELECT * FROM `filmdb` WHERE vorhanden="ja" AND Film REGEXP "^[[:digit:]]{1}" ORDER BY `Qualität` ASC'; break;
	case "qualitaet_desc": $sql = 'SELECT * FROM `filmdb` WHERE vorhanden="ja" AND Film REGEXP "^[[:digit:]]{1}" ORDER BY `Qualität` DESC'; break;
	default: $sql = 'SELECT * FROM `filmdb` WHERE vorhanden="ja" AND Film REGEXP "^[[:digit:]]{1}" ORDER BY `Film` ASC'; break; } }
elseif ($_GET['leftout'] == "ja") {
switch($_GET['order']) {
case "film_asc": $sql = 'SELECT * FROM `filmdb` WHERE vorhanden="nein" AND Film REGEXP "^[[:digit:]]{1}" ORDER BY `Film` ASC'; break;
case "film_desc": $sql = 'SELECT * FROM `filmdb` WHERE vorhanden="nein" AND Film REGEXP "^[[:digit:]]{1}" ORDER BY `Film` DESC'; break;
case "jahr_asc": $sql = 'SELECT * FROM `filmdb` WHERE vorhanden="nein" AND Film REGEXP "^[[:digit:]]{1}" ORDER BY `Jahr` ASC'; break;
case "jahr_desc": $sql = 'SELECT * FROM `filmdb` WHERE vorhanden="nein" AND Film REGEXP "^[[:digit:]]{1}" ORDER BY `Jahr` DESC'; break;
case "vorhanden_asc": $sql = 'SELECT * FROM `filmdb` WHERE vorhanden="nein" AND Film REGEXP "^[[:digit:]]{1}" ORDER BY `vorhanden` ASC'; break;
case "vorhanden_desc": $sql = 'SELECT * FROM `filmdb` WHERE vorhanden="nein" AND Film REGEXP "^[[:digit:]]{1}" ORDER BY `vorhanden` DESC'; break;
case "cds_asc": $sql = 'SELECT * FROM `filmdb` WHERE vorhanden="nein" AND Film REGEXP "^[[:digit:]]{1}" ORDER BY `CDs` ASC'; break;
case "cds_desc": $sql = 'SELECT * FROM `filmdb` WHERE vorhanden="nein" AND Film REGEXP "^[[:digit:]]{1}" ORDER BY `CDs` DESC'; break;
case "qualitaet_asc": $sql = 'SELECT * FROM `filmdb` WHERE vorhanden="nein" AND Film REGEXP "^[[:digit:]]{1}" ORDER BY `Qualität` ASC'; break;
case "qualitaet_desc": $sql = 'SELECT * FROM `filmdb` WHERE vorhanden="nein" AND Film REGEXP "^[[:digit:]]{1}" ORDER BY `Qualität` DESC'; break;
default: $sql = 'SELECT * FROM `filmdb` WHERE vorhanden="nein" AND Film REGEXP "^[[:digit:]]{1}" ORDER BY `Film` ASC'; break; } }
else {
switch($_GET['order']) {
case "film_asc": $sql = 'SELECT * FROM `filmdb` WHERE Film REGEXP "^[[:digit:]]{1}" ORDER BY `Film` ASC'; break;
case "film_desc": $sql = 'SELECT * FROM `filmdb` WHERE Film REGEXP "^[[:digit:]]{1}" ORDER BY `Film` DESC'; break;
case "jahr_asc": $sql = 'SELECT * FROM `filmdb` WHERE Film REGEXP "^[[:digit:]]{1}" ORDER BY `Jahr` ASC'; break;
case "jahr_desc": $sql = 'SELECT * FROM `filmdb` WHERE Film REGEXP "^[[:digit:]]{1}" ORDER BY `Jahr` DESC'; break;
case "vorhanden_asc": $sql = 'SELECT * FROM `filmdb` WHERE Film REGEXP "^[[:digit:]]{1}" ORDER BY `vorhanden` ASC'; break;
case "vorhanden_desc": $sql = 'SELECT * FROM `filmdb` WHERE Film REGEXP "^[[:digit:]]{1}" ORDER BY `vorhanden` DESC'; break;
case "cds_asc": $sql = 'SELECT * FROM `filmdb` WHERE Film REGEXP "^[[:digit:]]{1}" ORDER BY `CDs` ASC'; break;
case "cds_desc": $sql = 'SELECT * FROM `filmdb` WHERE Film REGEXP "^[[:digit:]]{1}" ORDER BY `CDs` DESC'; break;
case "qualitaet_asc": $sql = 'SELECT * FROM `filmdb` WHERE Film REGEXP "^[[:digit:]]{1}" ORDER BY `Qualität` ASC'; break;
case "qualitaet_desc": $sql = 'SELECT * FROM `filmdb` WHERE Film REGEXP "^[[:digit:]]{1}" ORDER BY `Qualität` DESC'; break;
default: $sql = 'SELECT * FROM `filmdb` WHERE Film REGEXP "^[[:digit:]]{1}" ORDER BY `Film` ASC'; break; } } } }
else {
if ($_GET['leftout'] == "nein") {
switch($_GET['order']) {
case "film_asc": $sql = 'SELECT * FROM `filmdb` WHERE SUBSTRING(Film,1,1)="'.$_GET[letter].'" AND vorhanden="ja" ORDER BY `Film` ASC'; break;
case "film_desc": $sql = 'SELECT * FROM `filmdb` WHERE vorhanden="ja" AND SUBSTRING(Film,1,1)= "'.$_GET[letter].'" ORDER BY `Film` DESC'; break;
case "jahr_asc": $sql = 'SELECT * FROM `filmdb` WHERE vorhanden="ja" AND SUBSTRING(Film,1,1)= "'.$_GET[letter].'" ORDER BY `Jahr` ASC'; break;
case "jahr_desc": $sql = 'SELECT * FROM `filmdb` WHERE vorhanden="ja" AND SUBSTRING(Film,1,1)= "'.$_GET[letter].'" ORDER BY `Jahr` DESC'; break;
case "vorhanden_asc": $sql = 'SELECT * FROM `filmdb` WHERE vorhanden="ja" AND SUBSTRING(Film,1,1)= "'.$_GET[letter].'" ORDER BY `vorhanden` ASC'; break;
case "vorhanden_desc": $sql = 'SELECT * FROM `filmdb` WHERE vorhanden="ja" AND SUBSTRING(Film,1,1)= "'.$_GET[letter].'" ORDER BY `vorhanden` DESC'; break;
case "cds_asc": $sql = 'SELECT * FROM `filmdb` WHERE vorhanden="ja" AND SUBSTRING(Film,1,1)= "'.$_GET[letter].'" ORDER BY `CDs` ASC'; break;
case "cds_desc": $sql = 'SELECT * FROM `filmdb` WHERE vorhanden="ja" AND SUBSTRING(Film,1,1)= "'.$_GET[letter].'" ORDER BY `CDs` DESC'; break;
case "qualitaet_asc": $sql = 'SELECT * FROM `filmdb` WHERE vorhanden="ja" AND SUBSTRING(Film,1,1)= "'.$_GET[letter].'" ORDER BY `Qualität` ASC'; break;
case "qualitaet_desc": $sql = 'SELECT * FROM `filmdb` WHERE vorhanden="ja" AND SUBSTRING(Film,1,1)= "'.$_GET[letter].'" ORDER BY `Qualität` DESC'; break;
default: $sql = 'SELECT * FROM `filmdb` WHERE vorhanden="ja" AND SUBSTRING(Film,1,1)= "'.$_GET[letter].'" ORDER BY `Film` ASC'; break; } }
elseif ($_GET['leftout'] == "ja") {
switch($_GET['order']) {
case "film_asc": $sql = 'SELECT * FROM `filmdb` WHERE vorhanden="nein" AND SUBSTRING(Film,1,1)= "'.$_GET[letter].'" ORDER BY `Film` ASC'; break;
case "film_desc": $sql = 'SELECT * FROM `filmdb` WHERE vorhanden="nein" AND SUBSTRING(Film,1,1)= "'.$_GET[letter].'" ORDER BY `Film` DESC'; break;
case "jahr_asc": $sql = 'SELECT * FROM `filmdb` WHERE vorhanden="nein" AND SUBSTRING(Film,1,1)= "'.$_GET[letter].'" ORDER BY `Jahr` ASC'; break;
case "jahr_desc": $sql = 'SELECT * FROM `filmdb` WHERE vorhanden="nein" AND SUBSTRING(Film,1,1)= "'.$_GET[letter].'" ORDER BY `Jahr` DESC'; break;
case "vorhanden_asc": $sql = 'SELECT * FROM `filmdb` WHERE vorhanden="nein" AND SUBSTRING(Film,1,1)= "'.$_GET[letter].'" ORDER BY `vorhanden` ASC'; break;
case "vorhanden_desc": $sql = 'SELECT * FROM `filmdb` WHERE vorhanden="nein" AND SUBSTRING(Film,1,1)= "'.$_GET[letter].'" ORDER BY `vorhanden` DESC'; break;
case "cds_asc": $sql = 'SELECT * FROM `filmdb` WHERE vorhanden="nein" AND SUBSTRING(Film,1,1)= "'.$_GET[letter].'" ORDER BY `CDs` ASC'; break;
case "cds_desc": $sql = 'SELECT * FROM `filmdb` WHERE vorhanden="nein" AND SUBSTRING(Film,1,1)= "'.$_GET[letter].'" ORDER BY `CDs` DESC'; break;
case "qualitaet_asc": $sql = 'SELECT * FROM `filmdb` WHERE vorhanden="nein" AND SUBSTRING(Film,1,1)= "'.$_GET[letter].'" ORDER BY `Qualität` ASC'; break;
case "qualitaet_desc": $sql = 'SELECT * FROM `filmdb` WHERE vorhanden="nein" AND SUBSTRING(Film,1,1)= "'.$_GET[letter].'" ORDER BY `Qualität` DESC'; break;
default: $sql = 'SELECT * FROM `filmdb` WHERE vorhanden="nein" AND SUBSTRING(Film,1,1)= "'.$_GET[letter].'" ORDER BY `Film` ASC'; break; } }
else {
	switch($_GET['order']) {
		case "film_asc": $sql = 'SELECT * FROM `filmdb` WHERE SUBSTRING(Film,1,1)= "'.$_GET[letter].'" ORDER BY `Film` ASC'; break;
		case "film_desc": $sql = 'SELECT * FROM `filmdb` WHERE SUBSTRING(Film,1,1)= "'.$_GET[letter].'" ORDER BY `Film` DESC'; break;
		case "jahr_asc": $sql = 'SELECT * FROM `filmdb` WHERE SUBSTRING(Film,1,1)= "'.$_GET[letter].'" ORDER BY `Jahr` ASC'; break;
		case "jahr_desc": $sql = 'SELECT * FROM `filmdb` WHERE SUBSTRING(Film,1,1)= "'.$_GET[letter].'" ORDER BY `Jahr` DESC'; break;
		case "vorhanden_asc": $sql = 'SELECT * FROM `filmdb` WHERE SUBSTRING(Film,1,1)= "'.$_GET[letter].'" ORDER BY `vorhanden` ASC'; break;
		case "vorhanden_desc": $sql = 'SELECT * FROM `filmdb` WHERE SUBSTRING(Film,1,1)= "'.$_GET[letter].'" ORDER BY `vorhanden` DESC'; break;
		case "cds_asc": $sql = 'SELECT * FROM `filmdb` WHERE SUBSTRING(Film,1,1)= "'.$_GET[letter].'" ORDER BY `CDs` ASC'; break;
		case "cds_desc": $sql = 'SELECT * FROM `filmdb` WHERE SUBSTRING(Film,1,1)= "'.$_GET[letter].'" ORDER BY `CDs` DESC'; break;
		case "qualitaet_asc": $sql = 'SELECT * FROM `filmdb` WHERE SUBSTRING(Film,1,1)= "'.$_GET[letter].'" ORDER BY `Qualität` ASC'; break;
		case "qualitaet_desc": $sql = 'SELECT * FROM `filmdb` WHERE SUBSTRING(Film,1,1)= "'.$_GET[letter].'" ORDER BY `Qualität` DESC'; break;
		default: $sql = 'SELECT * FROM `filmdb` WHERE SUBSTRING(Film,1,1)= "'.$_GET[letter].'" ORDER BY `Film` ASC'; break;
	}
}

if ($_GET['leftout'] == "nein") {
switch($_GET['order']) {
case "film_asc": $sql = 'SELECT * FROM `filmdb` WHERE vorhanden="ja" ORDER BY `Film` ASC'; break;
case "film_desc": $sql = 'SELECT * FROM `filmdb` WHERE vorhanden="ja" ORDER BY `Film` DESC'; break;
case "jahr_asc": $sql = 'SELECT * FROM `filmdb` WHERE vorhanden="ja" ORDER BY `Jahr` ASC'; break;

case "jahr_desc": $sql = 'SELECT * FROM `filmdb` WHERE vorhanden="ja" ORDER BY `Jahr` DESC'; break;
case "vorhanden_asc": $sql = 'SELECT * FROM `filmdb` WHERE vorhanden="ja" ORDER BY `vorhanden` ASC'; break;
case "vorhanden_desc": $sql = 'SELECT * FROM `filmdb` WHERE vorhanden="ja" ORDER BY `vorhanden` DESC'; break;
case "cds_asc": $sql = 'SELECT * FROM `filmdb` WHERE vorhanden="ja" ORDER BY `CDs` ASC'; break;
case "cds_desc": $sql = 'SELECT * FROM `filmdb` WHERE vorhanden="ja" ORDER BY `CDs` DESC'; break;
case "qualitaet_asc": $sql = 'SELECT * FROM `filmdb` WHERE vorhanden="ja" ORDER BY `Qualität` ASC'; break;
case "qualitaet_desc": $sql = 'SELECT * FROM `filmdb` WHERE vorhanden="ja" ORDER BY `Qualität` DESC'; break;
default: $sql = 'SELECT * FROM `filmdb` WHERE vorhanden="ja" ORDER BY `Film` ASC'; break; }
}
elseif ($_GET['leftout'] == "ja") {
switch($_GET['order']) {
case "film_asc": $sql = 'SELECT * FROM `filmdb` WHERE vorhanden="nein" ORDER BY `Film` ASC'; break;
case "film_desc": $sql = 'SELECT * FROM `filmdb` WHERE vorhanden="nein" ORDER BY `Film` DESC'; break;
case "jahr_asc": $sql = 'SELECT * FROM `filmdb` WHERE vorhanden="nein" ORDER BY `Jahr` ASC'; break;
case "jahr_desc": $sql = 'SELECT * FROM `filmdb` WHERE vorhanden="nein" ORDER BY `Jahr` DESC'; break;
case "vorhanden_asc": $sql = 'SELECT * FROM `filmdb` WHERE vorhanden="nein" ORDER BY `vorhanden` ASC'; break;
case "vorhanden_desc": $sql = 'SELECT * FROM `filmdb` WHERE vorhanden="nein" ORDER BY `vorhanden` DESC'; break;
case "cds_asc": $sql = 'SELECT * FROM `filmdb` WHERE vorhanden="nein" ORDER BY `CDs` ASC'; break;
case "cds_desc": $sql = 'SELECT * FROM `filmdb` WHERE vorhanden="nein" ORDER BY `CDs` DESC'; break;
case "qualitaet_asc": $sql = 'SELECT * FROM `filmdb` WHERE vorhanden="nein" ORDER BY `Qualität` ASC'; break;
case "qualitaet_desc": $sql = 'SELECT * FROM `filmdb` WHERE vorhanden="nein" ORDER BY `Qualität` DESC'; break;
default: $sql = 'SELECT * FROM `filmdb` WHERE vorhanden="nein" ORDER BY `Film` ASC'; break; } }
else {
switch($_GET['order']) {
case "film_asc": $sql = 'SELECT * FROM `filmdb` ORDER BY `Film` ASC'; break;
case "film_desc": $sql = 'SELECT * FROM `filmdb` ORDER BY `Film` DESC'; break;
case "jahr_asc": $sql = 'SELECT * FROM `filmdb` ORDER BY `Jahr` ASC'; break;
case "jahr_desc": $sql = 'SELECT * FROM `filmdb` ORDER BY `Jahr` DESC'; break;
case "vorhanden_asc": $sql = 'SELECT * FROM `filmdb` ORDER BY `vorhanden` ASC'; break;
case "vorhanden_desc": $sql = 'SELECT * FROM `filmdb` ORDER BY `vorhanden` DESC'; break;
case "cds_asc": $sql = 'SELECT * FROM `filmdb` ORDER BY `CDs` ASC'; break;
case "cds_desc": $sql = 'SELECT * FROM `filmdb` ORDER BY `CDs` DESC'; break;
case "qualitaet_asc": $sql = 'SELECT * FROM `filmdb` ORDER BY `Qualität` ASC'; break;
case "qualitaet_desc": $sql = 'SELECT * FROM `filmdb` ORDER BY `Qualität` DESC'; break;
default: $sql = 'SELECT * FROM `filmdb` ORDER BY `Film` ASC'; break; } } }
 
DANKE, aber...

Kein parse error mehr.
Aber jetzt geht es nur noch zur Hälfte. Und zwar zeigt er mir jetzt nur Einträge mit einer Zahl am Amfang, wenn $letter="num" ist. Wenn $letter aber jetzt ein Buchstabe ist, kommt 'Query was empty'.
 
Zurück