php-resource



Zurück   PHP-Scripte PHP-Tutorials PHP-Jobs und vieles mehr > Entwicklung > SQL / Datenbanken
 

Login

 
eingeloggt bleiben
star Jetzt registrieren   star Passwort vergessen
 

 

 


SQL / Datenbanken Probleme mit SQL? Hier könnt ihr eure Fragen zu SQL (MySQL, PostgreSQL, MS-SQL und andere ANSI-SQL Server) los werden.

Antwort
 
LinkBack Themen-Optionen Thema bewerten
  #16 (permalink)  
Alt 09-04-2013, 11:58
ich1d3
 Registrierter Benutzer
Links : Onlinestatus : ich1d3 ist offline
Registriert seit: Mar 2013
Beiträge: 25
ich1d3 befindet sich auf einem aufstrebenden Ast
Standard Suche mit Eingabefeldern

Hallo Melewo. Danke wieder für die Hilfe. Leider geht es immer noch nicht.
Ich habe sogar eine extra Testtabelle test mit den Datenbankfeldern name und plz angelegt.

Da brauchte ich zu Deinem Script nur noch die Datenbank-Login-Daten ändern und von test die Pünktchen wegnehmen.

Trotzdem erhalte ich dann als Ausgabe www……../a.php mit der Fehlermeldung: Code 404: Seite kann nicht angezeigt werden.

Die normale Suche ohne Eingabefelder unter Datensätze aus einer Datenbank auslesen und ausgeben funktioniert problemlos (gleiche Login-Daten habe ich in beiden Scripten geprüft.). (Hoffe, dass man im Forum die betroffenen Seiten nennen darf)

In Test habe ich Klaus und Bernhard und 99423 als Datensätze eingegeben in die Datenbank. Aber selbst leere Felder dürften ja nicht zur Fehlermeldung führen.

In Deinem Script bin ich auch etwas verwirrt zu Folgendem: Oben:

PHP-Code:
<input type="text" name="name"
weiter unten dann:
PHP-Code:
 $sql mysqli_connect($db_host$db_user$db_pass$db_name
           or die(
"Die Datenbank konnte nicht erreicht werden!");

    if (isset(
$_POST["name"]) and !empty($_POST["name"])) {

        
$ort trim($_POST["name"]);
        
$ort preg_replace("/[^a-z\s-]/i"""$ort);
        
$abf "SELECT * FROM test... WHERE name='".$ort."'"
Aber auch, wenn ich statt ort dort überall name einsetze und umgedreht erhalte ich die Fehlermeldung.
Es ist zum Mäuse-Melken!
Trotzdem danke für die Mühe. Ich denke, es ist wie üblich nur ein kleiner Fehler, der sich versteckt hat. Aber wo?
Mit Zitat antworten
  #17 (permalink)  
Alt 09-04-2013, 12:44
Melewo
 Registrierter Benutzer
Links : Onlinestatus : Melewo ist offline
Registriert seit: Jan 2013
Beiträge: 365
Melewo befindet sich auf einem aufstrebenden Ast
Standard

Zitat:
Zitat von ich1d3 Beitrag anzeigen
Trotzdem erhalte ich dann als Ausgabe www……../a.php mit der Fehlermeldung: Code 404: Seite kann nicht angezeigt werden.
Wenn Du die Seite unter "www.example.com/a.php" abspeicherst und anschließend im Browser mit "www.example.com/a.php" aufrufst, dann erhältst Du einen 404 Statuscode zur Antwort? Ich meine, ich sehe es ja unter "Test"-Link, doch dieses Problem kann ich leider nicht nachvollziehen.

Vielleicht solltest Du mal eine phpinfo(); hochladen, nur um festzustellen, was da überhaupt Sache ist. Also, hinter MySQL Support sollte da schon enabled stehen (was der Fall sein wird, da die normale suche.php ja reibungslos funktioniert) und bei Verwendung von meinem Beispiel sollte da auch hinter MysqlI Support enabled stehen.

Zitat:
Zitat von ich1d3 Beitrag anzeigen
In Deinem Script bin ich auch etwas verwirrt zu Folgendem:

<input type="text" name="name">

...
$ort = trim($_POST["name"]);
$ort = preg_replace("/[^a-z\s-]/i", "", $ort);
$abf = "SELECT * FROM test... WHERE name='".$ort."'";
Wenn im Formular name="name" und in der Datenbank der Feldname "name" ist, dann ist es doch richtig. $ort ist doch nur der Name eines Bezeichers für die Variable, in der als Wert der Wert von "name" gespeichert ist.

$Bezeicher = "Wertzuweisung";

Wenn die normale Suche reibungslos funktioniert, warum entfernst Du dann nicht nur aus dieser alle überflüssigen Feldnamen und gut ist? Wenn Du da nur noch name und plz drinne lässt und unter suche-ort-plz.php speicherst, dann sollte es doch keine Probleme geben. Oder verstehe ich da jetzt gerade etwas nicht?

Tausche mal

PHP-Code:
<form action="a.php" method="post"
gegen

PHP-Code:
<form action="<?php echo basename($_SERVER["PHP_SELF"]); ?>" method="post">
So das die Seite auch wirklich an sich selber sendet.

Edit: Sehe gerade, dabei handelt es sich um eine ganz normale Fehlerseite, weil die Seite zwar an /a.php sendet, jedoch nicht unter a.php abgespeichert wurde? Ich ging davon aus, Du hättest die Seite unter a.php abgespeichert und konnte mir deshalb nicht den 404 erklären. Doch wenn ich "ich-existiere-nicht.php" eingebe, lande ich ja auch bei der Fehlerseite:

Zitat:
Code 404: Seite kann nicht angezeigt werden.
Hast Du die Seite wirklich unter suche3.php abgespeichert, lässt die aber weiterhin an die nicht existierende Seite a.php senden? Dann ist alles verständlich.

Geändert von Melewo (09-04-2013 um 13:55 Uhr)
Mit Zitat antworten
  #18 (permalink)  
Alt 09-04-2013, 15:57
ich1d3
 Registrierter Benutzer
Links : Onlinestatus : ich1d3 ist offline
Registriert seit: Mar 2013
Beiträge: 25
ich1d3 befindet sich auf einem aufstrebenden Ast
Standard Suche mit Eingabefeldern

Ich habe die Seite mit Deinem Script unter suche3.php in dem www... Ordner abgespeichert, in dem ich auch die Datenbank erreiche und in dem auch die Dateien suche.php (Suche nach Ort=Weimar und plz=99423), mysql_lesen.php usw. sind, also in unserem Fall Test. Während die anderen beiden Dateien problemlos funktionieren wie man ausprobieren kann (statt suche3.php dann den Dateinamen der anderen beiden Dateien angeben) bekomme ich nur bei der Datei suche3.php mit unserem Code die Anzeige des Fehlercodes. Ich kann aber auch keinen Fehler in Deinem Script sehen, da es mit meinen Erfahrungen aus den anderen funktionierenden Scripten übereinstimmt.
Die Codes für die anderen Scripte wie Eingabe und Ausgabe der Daten, die ja problemlos funktionieren, habe ich unter Initiativ-Network -> Software veröffentlicht (Login-Daten wieder geändert). Die Suche kommt dann dazu, wenn sie funktioniert.
Es ist trotzdem schön, dass Du bisher diese Geduld aufgebracht hast. Danke nochmals.
Mit Zitat antworten
  #19 (permalink)  
Alt 09-04-2013, 16:17
Melewo
 Registrierter Benutzer
Links : Onlinestatus : Melewo ist offline
Registriert seit: Jan 2013
Beiträge: 365
Melewo befindet sich auf einem aufstrebenden Ast
Standard

Ich ahne so was von furchtbar schrecklichen Dingen bereits bevor ich die Seite "http://www.networker.24.eu/suche3.php" öffne.

Code:
<form action="a.php" method="post">
Siehst Du da einen Unterschied, der einen 404 erklären könnte?

Oder sollte es nicht zufälligerweise doch eher so aussehen, wenn Du die Datei unter suche3.php speicherst?

Code:
<form action="suche3.php" method="post">
Die Datei a.php liegt bei mir auf dem Computer, die kann Dein Script nicht erreichen. Erreichen könnte es nur die suche3.php oder unter dem Namen unter welchen Du die Datei auch immer speicherst.

Entweder:

Code:
<form action="der-Name-unter-dem-Du-die-Datei-speicherst.php" method="post">
oder:

PHP-Code:
<form action="<?php echo basename($_SERVER["PHP_SELF"]); ?>" method="post">

Geändert von Melewo (09-04-2013 um 16:39 Uhr)
Mit Zitat antworten
  #20 (permalink)  
Alt 09-04-2013, 17:06
ich1d3
 Registrierter Benutzer
Links : Onlinestatus : ich1d3 ist offline
Registriert seit: Mar 2013
Beiträge: 25
ich1d3 befindet sich auf einem aufstrebenden Ast
Standard Suche mit Eingabefeldern

Hey. Ich bin ja sowas von glücklich. Es funktioniert. Da oben bei a.php habe ich nie hingeschaut.
Ich bekomme also ein gewünschtes Ergebnis angezeigt, aber zusätzlich noch Fehlermeldungen, wie Du selbst prüfen kannst unter obigem Link. Ich habe also a.php durch suche3php ersetzt. War das richtig?

Notice: Undefined variable: name in /data/multiserv/users/1046682/projects/2363976/www/suche3.php on line 30

Notice: Undefined variable: name in /data/multiserv/users/1046682/projects/2363976/www/suche3.php on line 31

Das sind die Zeilen:

PHP-Code:
 $ort preg_replace("/[^a-z\s-]/i"""$name);
        
$abf "SELECT * FROM test WHERE name='".$name."'"
Bekommen wir da gemeinsam noch was hin? Wenn alles funktioniert kannst Du es ja dann bei der obigen Webseite auch sehen. Es warten nämlich bereits eine Reihe von Leuten auf meine Lösungen. Bei Bedarf kannst Du auch mit ins Impressum, bei dem Aufwand und der Geduld, die Du bis jetzt mit mir hattest.
Mit Zitat antworten
  #21 (permalink)  
Alt 09-04-2013, 17:08
ich1d3
 Registrierter Benutzer
Links : Onlinestatus : ich1d3 ist offline
Registriert seit: Mar 2013
Beiträge: 25
ich1d3 befindet sich auf einem aufstrebenden Ast
Standard Suche mit Eingabefeldern

Man kann Klaus oder Bernhard vorn eintragen und 99423 oder 99427 hinten eintragen
Mit Zitat antworten
  #22 (permalink)  
Alt 09-04-2013, 18:00
ich1d3
 Registrierter Benutzer
Links : Onlinestatus : ich1d3 ist offline
Registriert seit: Mar 2013
Beiträge: 25
ich1d3 befindet sich auf einem aufstrebenden Ast
Standard Suche mit Eingabefeldern

Ich habe jetzt noch die Variable "ort" hinzugefügt und in die Testdatenbank noch Erfurt und Weimar aufgenommen.
Bekomme keine Fehlermeldung mehr. Taste mich Schritt für Schritt heran und es beginnt wieder Spaß zu machen. Das fertige Script dann auch in den nächsten Tagen unter obiger Webadresse.

Danach geht es mit "limit" weiter.

Großes Danke schön erst mal bis hier her. BB
Mit Zitat antworten
  #23 (permalink)  
Alt 09-04-2013, 18:40
Melewo
 Registrierter Benutzer
Links : Onlinestatus : Melewo ist offline
Registriert seit: Jan 2013
Beiträge: 365
Melewo befindet sich auf einem aufstrebenden Ast
Standard

Es funktioniert, ich habe es gesehen. Das war ja nun eine etwas schwierige Geburt. Mit dem richtigen Namen bei Action passiert mir auch zuweilen. Wenn ich den letzten Arbeitsstand als Kopie speichere, die nur mit unterschiedlichen Endnummern versehe, dann bei action="" noch datei3.php steht, ich aber an datei5.php arbeite. Da kommt dann zwar kein 404, doch die letzte Veränderung bleibt ohne Wirkung, bis es dann auffällt, dass da irgendetwas nicht stimmen kann.

Zitat:
Zitat von ich1d3 Beitrag anzeigen
Bei Bedarf kannst Du auch mit ins Impressum, bei dem Aufwand und der Geduld, die Du bis jetzt mit mir hattest.
Wenn Du möchtest, so könntest Du einen Verweis auf "www.coder-welten.de" einflechten, ist meine und da wäre ich ganz und gar nicht böse.
Mit Zitat antworten
  #24 (permalink)  
Alt 09-04-2013, 19:50
ich1d3
 Registrierter Benutzer
Links : Onlinestatus : ich1d3 ist offline
Registriert seit: Mar 2013
Beiträge: 25
ich1d3 befindet sich auf einem aufstrebenden Ast
Standard Suche mit Eingabefeldern

Ja, eine interessante Seite!
Wo möchtest Du denn mit vermerkt werden – Mehrfachnennungen sind möglich, auch Ergänzungen zu unten ;-)

Angebote:
Impressum
Software?

Noch ein Wunsch? Kannst du morgen überprüfen oder mir die Freundschaft kündigen.

Darf ich Dich dafür noch etwas nerven?

Ich möchte z.B. abfragen, in welchem Ort es Bürgerinitiativen im Bereich „Soziales“ gibt. Das habe ich in suche4.php folgendermaßen probiert:

PHP-Code:
 if (isset($_POST["ort"]) and !empty($_POST["ort"])) {

        
$ort trim($_POST["ort"]);
        
$ort preg_replace("/[^a-z\s-]/i"""$ort);
        
$abf "SELECT * FROM test WHERE ort='".$ort."'";
    }
    
    if (isset(
$_POST["plz"]) and !empty($_POST["plz"])) {

        
$plz trim($_POST["plz"]);
        
$plz preg_replace("/[^0-9]/i"""$plz );
        
$abf "SELECT * FROM test WHERE plz='".$plz."'";
    }

     if (isset(
$_POST["soziales"]) and !empty($_POST["soziales"])) {

        
$plz trim($_POST["soziales"]);
        
$plz preg_replace("/[^0-9]/i"""$soziales);
        
$abf "SELECT * FROM test WHERE soziales='".$soziales."'";
    } 
usw.
Man kann 1. den Ort, 2. die PLZ und 3. für Soziales eine 1 eingeben, wie sie in der Datenbanktabelle test... steht.

Es kommt wieder die berüchtigte Fehlermeldung
Notice: Undefined variable: soziales in /data/multiserv/users/1046682/projects/2363976/www/suche4.php on line 45

Notice: Undefined variable: soziales in /data/multiserv/users/1046682/projects/2363976/www/suche4.php on line 46

Das ist
PHP-Code:
$plz preg_replace("/[^0-9]/i"""$soziales);
        
$abf "SELECT * FROM test WHERE soziales='".$soziales."'"
Für mich auch etwas verständlich, da die Daten mit
PHP-Code:
Soziales: <input type="checkbox" name="soziales" id="soziales" /><br /> 
eingegeben wurden und mit

PHP-Code:
$sql "SELECT  IF(`soziales`=0, 'Nein', 'Ja') as soziales FROM `test`"
eigentlich ausgelesen werden.

Wie bekomme ich das vernünftig in mein Script?
Zweitens: Die Abfrage mit "und". Wenn ich in der Datei abfrage ort=Erfurt und plz=99423 erhalte ich nur die Abfragen zu 99423, zu Erfurt nicht. Das ist ja auch nicht das Problem an der Stelle. Abfragen mit "und" möchte ich, welche Initiativen in Weimar gibt es "und" welche sind davon Sozial oder Bildung usw.
Das funktioniert so noch nicht fehlerfrei. Kannst es ja noch mal ausprobieren
Test

Du hast ja auf Deiner Webseite richtig geschrieben, dass man eine neue Scriptsprache nicht in wenigen Tagen erlernt und genau das Problem habe ich ja.
Wieder danke im voraus.
Mit Zitat antworten
  #25 (permalink)  
Alt 09-04-2013, 21:00
Melewo
 Registrierter Benutzer
Links : Onlinestatus : Melewo ist offline
Registriert seit: Jan 2013
Beiträge: 365
Melewo befindet sich auf einem aufstrebenden Ast
Standard

Zitat:
Zitat von ich1d3 Beitrag anzeigen
Darf ich Dich dafür noch etwas nerven?
Auweia, mir wird ja gleich ganz schlecht.
Zitat:
Zitat von ich1d3 Beitrag anzeigen
Es kommt wieder die berüchtigte Fehlermeldung
Notice: Undefined variable: soziales in ...
Bei Soziales sind alles Ziffern? Sehe gerade, bei Ziffern ist das i hinter /i überflüssig.
Siehst Du jetzt den Unterschied, nun sollte $soz nicht mehr undefiniert sein.

Code:
     if (isset($_POST["soziales"]) and !empty($_POST["soziales"])) {

        $soz = trim($_POST["soziales"]);
        $soz = preg_replace("/[^0-9]/", "", $soz);
        $abf = "SELECT * FROM test WHERE soziales='".$soz."'";
    }
Aber, Du brauchst nicht alles mit if-Statements basteln, dafür gibt es letztendlich auch AND und OR bei der WHERE-Klausel. Mal als Beispiel, "Ort und PLZ" sowie "Ort oder PLZ". Dazu müsste dann aber $abf überschrieben werden, falls beides bei "Ort und PLZ" belegt ist.

Code:
"SELECT * FROM test WHERE ort='".$ort."' AND plz='".$plz."'";
"SELECT * FROM test WHERE ort='".$ort."' OR plz='".$plz."'";
Mir erschien das bei der Aufgabenstellung nur einfacher, da alles was von einem Formular empfangen wird, ohnehin auf unerlaubte Zeichen kontrolliert werden sollte, um möglichen Schadcode zu entfernen.
Mit Zitat antworten
  #26 (permalink)  
Alt 11-04-2013, 09:34
ich1d3
 Registrierter Benutzer
Links : Onlinestatus : ich1d3 ist offline
Registriert seit: Mar 2013
Beiträge: 25
ich1d3 befindet sich auf einem aufstrebenden Ast
Standard Suche mit Eingabefeldern

Funktioniert leider noch nicht besser.
Musste zwischenzeitlich viele andere auch wichtige Dinge erledigen wie Geld verdienen, Familie usw.

Wo setze ich was ein? Das „i“ bei soziales ist raus
PHP-Code:
if (isset($_POST["eintragen"])) {

    
$sql mysqli_connect($db_host$db_user$db_pass$db_name
           or die(
"Die Datenbank konnte nicht erreicht werden!");

    if (isset(
$_POST["ort"]) and !empty($_POST["ort"])) {

        
$ort trim($_POST["ort"]);
        
$ort preg_replace("/[^a-z\s-]/i"""$ort);
        
$abf "SELECT * FROM test WHERE ort='".$ort."'";
    }
    
    if (isset(
$_POST["plz"]) and !empty($_POST["plz"])) {

        
$plz trim($_POST["plz"]);
        
$plz preg_replace("/[^0-9]/i"""$plz );
        
$abf "SELECT * FROM test WHERE plz='".$plz."'";
    }

     if (isset(
$_POST["soziales"]) and !empty($_POST["soziales"])) {

        
$plz trim($_POST["soziales"]);
        
$plz preg_replace("/[^0-9]/"""$soziales);
        
"SELECT * FROM test WHERE soziales='".$soziales."'";
    } 
Trotzdem bekomme ich bei der Abfrage unter Test den Wert für soziales nicht raus. Ich kann dort eine 1 oder eine 0 eingeben und bekomme keine vernünftigen Ergebnisse. Ich hatte aber die Eingabe ursprünglich mit einer Checkbox gemacht.
PHP-Code:
Soziales:; <input type="checkbox" name="soziales" id="soziales" /><br /> 
Wir dort eine Zahl abgefragt? In der Datenbanktabelle stehen dort zwar 0 oder 1, aber vielleicht wird dann bei einer Checkboxeingabe ein anderer Wert abgefragt?

Auch das mit dem and und or kann ich noch nicht einsetzen:
PHP-Code:
if (isset($_POST["eintragen"])) {

    
$sql mysqli_connect($db_host$db_user$db_pass$db_name
           or die(
"Die Datenbank konnte nicht erreicht werden!");

    if (isset(
$_POST["ort"]) and !empty($_POST["ort"])) {

        
$ort trim($_POST["ort"]);
        
$ort preg_replace("/[^a-z\s-]/i"""$ort);
        
    }
    
    if (isset(
$_POST["plz"]) and !empty($_POST["plz"])) {

        
$plz trim($_POST["plz"]);
        
$plz preg_replace("/[^0-9]/i"""$plz );
        
    }

     if (isset(
$_POST["soziales"]) and !empty($_POST["soziales"])) {

        
$plz trim($_POST["soziales"]);
        
$plz preg_replace("/[^0-9]/"""$soziales);
        
"SELECT * FROM test WHERE orts='".$ort."'" OR plz='".$plz."'" AND soziales='".$soziales."'" ;
    } 
Wie sieht das dann im Script aus? So wie hier funktioniert es leider nicht und die anderen Werte wie ort und plz müssen ja irgendwie definiert werden, so dass ich sie nicht weglassen kann und nur:
PHP-Code:
if (isset($_POST["eintragen"])) {

    
$sql mysqli_connect($db_host$db_user$db_pass$db_name
           or die(
"Die Datenbank konnte nicht erreicht werden!");

if (isset(
$_POST["soziales"]) and !empty($_POST["soziales"])) {

        
$plz trim($_POST["soziales"]);
        
$plz preg_replace("/[^0-9]/"""$soziales);
        
"SELECT * FROM test WHERE orts='".$ort."'" OR plz='".$plz."'" AND soziales='".$soziales."'" ;
    } 
hinschreibe.

Wieder vielen Dank im Voraus
Mit Zitat antworten
  #27 (permalink)  
Alt 11-04-2013, 09:42
ich1d3
 Registrierter Benutzer
Links : Onlinestatus : ich1d3 ist offline
Registriert seit: Mar 2013
Beiträge: 25
ich1d3 befindet sich auf einem aufstrebenden Ast
Standard Suche mit Eingabefeldern

Eben noch vergessen, sorry.
Habe mich in den Punkten "Impressum" und "Software" für Deine freundliche Unterstützung bedankt.
Versprechen = eingelöst. ;-)
Mit Zitat antworten
  #28 (permalink)  
Alt 11-04-2013, 10:59
ich1d3
 Registrierter Benutzer
Links : Onlinestatus : ich1d3 ist offline
Registriert seit: Mar 2013
Beiträge: 25
ich1d3 befindet sich auf einem aufstrebenden Ast
Standard Suche mit Eingabefeldern

Die Variablen "soziales" usw. sind als tinyint(1) in der Tabelle abgelegt.
Kann ich die Suche auch mit Radiobuttons machen?
Mit Zitat antworten
  #29 (permalink)  
Alt 11-04-2013, 12:03
Melewo
 Registrierter Benutzer
Links : Onlinestatus : Melewo ist offline
Registriert seit: Jan 2013
Beiträge: 365
Melewo befindet sich auf einem aufstrebenden Ast
Standard

Also, ich bekomme nun langsam doch eine Krise. Hatte Dir weiter oben ja schon das Beispiel korrigiert. Doch irgendwie verstehst du da etwas nicht. Weiß jetzt nicht mehr in welchen Schuljahr es war, doch irgendwann in den ersten Jahren lernten wir da schon, dass

1 + 1 = 2

und

2 + 2 = 4

ist. Nun und wenn Du mit PHP beginnst, so richtig als absoluter Einsteiger, wirst Du wohl überall auf den ersten Seiten lesen, dass von rechts nach links gelesen wird. Also,

2 = 1 + 1

und

4 = 2 + 2

Nur das dann der Wert des Ergebnisses nicht als Zahl geschrieben wird, sondern in einer Variablen gespeichert wird. Also,

PHP-Code:
$Ergebnis 1;      // In der Variablen $Ergebnis ist nun das Ergebnis von 1 + 1 gespeichert.
$Ergebnis 2;      // In der Variablen $Ergebnis ist nun das Ergebnis von 2 + 2 gespeichert.
$Ergebnis trim($_POST["soziales"]); // In $Ergebnis ist nun der empfangene Wert vom Input-Element mit dem Namen "soziales" gespeichert. 
Und da Du nun das Ergebnis von der Rechenaufgabe 1 + 1 ein anderes ist, als das Ergebnis Rechenaufgabe 2 + 2, so musst Du auch jedem Ergebnis einen anderen und möglichst eindeutigen Namen geben. Du könntest es zum Beispiel mit $Ergebnis1 und $Ergebnis2 bezeichnen. Machst Du aber nicht, Du benutzt das Ergebnis mit dem Namen $plz auch als Ergebnis für die nächste Aufgabe, womit Du das erste in $plz gespeicherte Ergebnis löscht.

Als ob es damit noch nicht genug wäre. Wo kommt $soziales her, wenn Du dieser Variablen vorher weder einen Wert wie bei $soziales = Wert zugewiesen hast, noch das Ergebnis aus irgend einer Aufgabe, wie bei wie bei $soziales = 1 + 1, speichert?

In Zahlen:

PHP-Code:
   x Aufgabe(Ausdruck""x)
$plz preg_replace("/[^0-9]/"""$soziales); 
Nun x ist aber undefiniert, sehe zu, das Du x einen Wert zuweist, zum Beispiel in dem Du in der ersten Zeile schreibst:

PHP-Code:
$x trim($_POST["soziales"]);
$x preg_replace("/[^0-9]/"""$x); 
Nun enthält $x einen Wert, mit dem PHP rechnen kann.
Mit Zitat antworten
  #30 (permalink)  
Alt 11-04-2013, 19:12
ich1d3
 Registrierter Benutzer
Links : Onlinestatus : ich1d3 ist offline
Registriert seit: Mar 2013
Beiträge: 25
ich1d3 befindet sich auf einem aufstrebenden Ast
Standard Suche mit Eingabefeldern

Ja, das sind diese typischen Fehler, wo man 10 x hinschaut und sie trotzdem nicht sieht. Danke für den Matheunterricht. Da kann ich ja demnächst doch noch die 4.Klasse abschließen ;-)

Wenn ich es so mache:
PHP-Code:
if (isset($_POST["soziales"]) and !empty($_POST["soziales"])) {

        
$x trim($_POST["soziales"]);
        
$soziales preg_replace("/[^0-9]/"""$x); 
        
"SELECT * FROM test WHERE soziales='".$soziales."'";
    } 
bringts ja nichts. Das ist ja wie vorher, nur anders geschrieben.

Auch konsequent umgesetzt:
PHP-Code:
if (isset($_POST["soziales"]) and !empty($_POST["soziales"])) {

        
$x trim($_POST["soziales"]);
        
$x preg_replace("/[^0-9]/"""$x); 
        
"SELECT * FROM test WHERE soziales='".$x."'";
    }

    if (
$sql != false and $abf != false) {

        if (
$result mysqli_query($sql$abf)) {

            
$anzahl mysqli_num_rows($result);
            echo 
"<p>Es wurden <strong>".$anzahl."</strong> Datensätze gefunden!</p>\n";

            echo 
"<table border=\"1\">\n".
                 
"<tr><th>Ort</th><th>PLZ</th><th>Soziales</th>\n";

            while (
$datensatz mysqli_fetch_assoc($result)) {

                echo 
"<tr>".
                
"<td>".htmlspecialchars($datensatz["ort"])."</td>".
                
"<td>" .htmlspecialchars($datensatz["plz"])."</td>".
                
"<td>" .$datensatz['soziales']. "</td>".
                
"</tr>\n";
            } 
erhalte ich zwar keine Fehlermeldung, aber auch kein gewünschtes sortiertes Ergebnis.
Unter Test kann ich 1,2,3,4 oder a,b,c eintragen, ohne dass sich das Ergebnis ändert. Irgendwie wird noch nicht der tatsächliche Wert aus der Datenbank abgefragt und verarbeitet im Gegensatz zu den ersten beiden Feldern.
Ruhig unter Test ausprobieren. Dort ist exakt der Code von oben drin.
Mit Zitat antworten
Antwort

Lesezeichen


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Suche in einer Datenbank über ein fomular mit 2 eingabefeldern darklord9579 PHP Developer Forum 8 07-12-2011 15:29
Automatisches Erzeugen von Eingabefeldern Apgunner PHP Developer Forum 7 10-02-2008 01:43
Nur a-z und 0-9 in Eingabefeldern zulassen Screw Driver PHP Developer Forum 4 22-09-2006 16:59
ändern von eingabefeldern value Crank Yanker HTML, JavaScript, AJAX, jQuery, CSS, Bootstrap, LESS 8 08-11-2004 21:53
Textgröße in eingabefeldern verändern? bappo HTML, JavaScript, AJAX, jQuery, CSS, Bootstrap, LESS 2 29-09-2003 20:13

Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an


PHP News

ebiz-trader 7.5.0 mit PHP7 Unterstützung veröffentlicht
ebiz-trader 7.5.0 mit PHP7 Unterstützung veröffentlichtDie bekannte Marktplatzsoftware ebiz-trader ist in der Version 7.5.0 veröffentlicht worden.

28.05.2018 | Berni

Wissensbestand in Unternehmen
Wissensbestand in UnternehmenLebenslanges Lernen und Weiterbilden sichert Wissensbestand in Unternehmen

25.05.2018 | Berni


 

Aktuelle PHP Scripte

PHP Server Monitor

PHP Server Monitor ist ein Skript, das prüft, ob Ihre Websites und Server betriebsbereit sind.

11.09.2018 Berni | Kategorie: PHP/ Security
PHP WEB STATISTIK ansehen PHP WEB STATISTIK

Die PHP Web Statistik bietet Ihnen ein einfach zu konfigurierendes Script zur Aufzeichnung und grafischen und textuellen Auswertung der Besuchern Ihrer Webseite. Folgende zeitlichen Module sind verfügbar: Jahr, Monat, Tag, Wochentag, Stunde Folgende son

28.08.2018 phpwebstat | Kategorie: PHP/ Counter
Affilinator - Affilinet XML Produktlisten Skript

Die Affilinator Affilinet XML Edition ist ein vollautomatisches Skript zum einlesen und darstellen der Affili.net (Partnerprogramm Netzwerk) Produktlisten und Produktdaten. Im Grunde gibt der Webmaster seine Affilinet PartnerID ein und hat dann unmittelb

27.08.2018 freefrank@ | Kategorie: PHP/ Partnerprogramme
 Alle PHP Scripte anzeigen

Alle Zeitangaben in WEZ +2. Es ist jetzt 00:30 Uhr.