Mit php,html und ,mysql Datenbank löschen und ändern


Sempervivum

Erfahrenes Mitglied
Lass mal mögliche Fehler beim Datenbankzugriff ausgeben:
Code:
    $query = "SELECT * FROM markers WHERE voller_name LIKE :voller_name AND addresse LIKE :addresse AND mobil LIKE :mobil AND tel LIKE :tel AND mail LIKE :mail AND www LIKE :www AND lat LIKE :lat AND lng LIKE :lng AND kategorie LIKE :kategorie ORDER BY id DESC";

    $statement = $connect->prepare($query);
    $statement->execute($data);
    var_dump($statement->errorInfo()); // <-- hier
    $result = $statement->fetchAll();
 

Hanner72

Mitglied
Hab den Server wieder umstellen müssen :rolleyes:

Wenn ich jetzt
fetch_data.php?voller_name=&addresse=&tel=&mobil=&www=&mail=&lat=&lng=&kategorie=
eingebe dann kommt folgendes im Browser
Code:
NULL
und das in der Console mit deinem Code
console1.PNG
 

Sempervivum

Erfahrenes Mitglied
Hast Du schon den var_dump aus meinem Posting #42 eingebaut? Ich nehme mal an, in Wirklichkeit ist die Tabelle nicht leer?
 

Hanner72

Mitglied
var_dump ist drin:
console2.PNG

In der Tabelle sind 442 Datensätze die werden auch angezeigt, aber nur wenn die php-Version stimmt.
 

Sempervivum

Erfahrenes Mitglied
Dann müsste eigentlich im Fehlerfall das var_dump etwas anzeigen - aber anscheinend nur NULL. Ich habe die vage Vermutung, dass es an der Kategorie liegen könnte. Das ist ein enum und es könnte Probleme machen, wenn die Werte nicht genau passen.
 

Hanner72

Mitglied
Moment mal...
Ich hatte deinen controller zwischenzeitlich deaktiviert, jetzt wieder aktiviert und dann kommt in der Console folgendes:
console3.PNG

In der Kategorie staht überall Gasthaus (bis auf den 1. Datensatz wo Hotel steht). Hab ich per Import in die SQL geschrieben, damit überall etwas drinnensteht.
 

Sempervivum

Erfahrenes Mitglied
Das Violation sagt mir jetzt nichts. Entscheidend ist, was das Skript beim Direktaufruf unter PHP 5.6 mit eingeschalteter Fehleranzeige und errorInfo() ausgibt.
 

Hanner72

Mitglied
Also bei PHP 5.6 und eingeschalteter Fehleranzeige
steht im Browser wenn ich diesen Link eingebe
Code:
http://###.at/adressen/fetch_data.php?voller_name=Danner&addresse=Palfau&tel=0664810&mobil=465231&www=www.fsde.at&mail=fdsfdsdf&lat=5454&lng=543543&kategorie=Gasthaus
das aus:
Code:
<br />
<b>Notice</b>:  Undefined variable: output in <b>/home/strabags/public_html/adressen/fetch_data.php</b> on line <b>50</b><br />
null
und in der Console steht einfach NIX. Keine Fehlermeldung etc., einfach NIX. :unsure:
 

Sempervivum

Erfahrenes Mitglied
Hast Du es, immer unter 5.6, auch mit leeren GET-Parametern versucht:
http://###.at/adressen/fetch_data.php?voller_name=&addresse=&tel=&mobil=&www=&mail=&lat=&lng=&kategorie=
Andernfalls ist der Filter wirksam und wenn die Werte nicht genau stimmen, hat man keine Treffer.
 

Sempervivum

Erfahrenes Mitglied
Will mir nicht in den Kopf, dass das errorInfo nichts ausgibt. Lass auch mal das $result anzeigen mit var_dump():
Code:
    $query = "SELECT * FROM markers WHERE voller_name LIKE :voller_name AND addresse LIKE :addresse AND mobil LIKE :mobil AND tel LIKE :tel AND mail LIKE :mail AND www LIKE :www AND lat LIKE :lat AND lng LIKE :lng AND kategorie LIKE :kategorie ORDER BY id DESC";

    $statement = $connect->prepare($query);
    $statement->execute($data);
    var_dump($statement->errorInfo());
    $result = $statement->fetchAll();
    var_dump($result); // <-- hier
    $output = array();
    foreach ($result as $row) {
        $output[] = array(
            'id' => $row['id'],
            'voller_name' => $row['voller_name'],
            'addresse' => $row['addresse'],
            'mobil' => $row['mobil'],
            'tel' => $row['tel'],
            'mail' => $row['mail'],
            'www' => $row['www'],
            'lat' => $row['lat'],
            'lng' => $row['lng'],
            'kategorie' => $row['kategorie'],
        );
    }

    header("Content-Type: application/json");
    echo json_encode($output);
}
 

Hanner72

Mitglied
Keine Änderung. Wieder das gleiche.
Das einzige was er sagt ist dass das favicon fehlt. :rolleyes:

Bei 5.4 haut er jetzt alles raus... also da stehen sämtliche Daten...
 

Sempervivum

Erfahrenes Mitglied
Jetzt stehe ich ratlos davor. Die Tabelle ist gefüllt, aber es kommen unter 5.6 bei der Abfrage keine Datensätze heraus. Und errorInfo gibt auch nichts aus.
 
Zuletzt bearbeitet:

Hanner72

Mitglied
Wenn ich voll schnell und oft die Seite aktualisiere kommt immer ganz kurz eine Fehlermeldung und da steht:

Code:
Resource interpreted as Document but transferred with MIME Type application/json: "http://###.at/adressen/fetch_data.php?voller_name=&addresse=&tel=&mobil=&www=&mail=&lat=&lng=&kategorie="
Vielleicht hilft ja das weiter...