+ Antworten
Seite 1 von 3 1 2 3 LetzteLetzte
Ergebnis 1 bis 15 von 37

Thema: Formular mit PHP Skript verbinden

  1. #1
    TP-Member veil macht alles soweit korrekt
    Registriert seit
    Aug 2009
    Beiträge
    53

    Formular mit PHP Skript verbinden

    Hallo an alle,

    ich habe ein kleines Problem. Ich möchte über ein Formular eine Suchabfrage in einer Datenbank ausführen. Dazu gibt es zwar schon reichlich Themen und Skripte im Internet, aber leider funktionieren diese alle bei mir nicht.

    Wie verbindet man denn das Formular richtig mit dem PHP-Skript ?

    Ich möchte idealerweise nach mehreren Begriffen in allen Feldern der Datenbank suchen.
    Dort wo die Begriffe vorkommen sollen die Daten aus allen Feldern ausgegeben werden. Ich möchte auch gerne mit "LIKE" suchen lassen,
    wenn das geht.

    Ich habe hier ein Beispiel, bei dem ich nur "Errors" bekomme:

    PHP-Code:
    <head>
    <
    title>Datenbank Suchfunktion</title>
    </
    head>
    <
    body>

    <
    p>Datenbank Suchfunktion!</p>
    <
    form method="POST" action="suchen.php">
    <
    p>Bitte nur den Suchbegriff hier eingeben!<br>
    <
    input type="text" name="suchbegriff" size="20"></p>
    <
    p><input type="submit" value="Absenden" name="Absenden"></p>
    </
    form>
    </
    body>
    </
    html
    Die suchen.php sieht bei mir derzeit so aus:
    PHP-Code:
    <head>
    <title>Gefundene Daten ausgeben</title>
    </head>

    <body>
    <?php
    $db_host 
    "localhost";
    $db_user "root";
    $db_pass "";
    $db_name "testdatenbank";

    $suche $_POST['suchbegriff'];
    // Verbindung oeffnen und Datenbank ausweahlen
    $conID mysql_connect$db_host$db_user$db_pass ) or die( "Die Datenbank konnte nicht erreicht werden!" );
    if (
    $conID)
    {
    mysql_select_db$db_name$conID );
    }

    $daten mysql_query('SELECT * FROM `testdatenabnk` WHERE `vorname`=\''.$suche.'\'' $conID); 
    while(
    $row=mysql_fetch_array($daten))
    {
    echo 
    $row['vorname'], ['name'], ['alter'], ['ort'] ;

    ?>
    </body>
    </html>
    Kann mir da jemand helfen ?
    Geändert von Cybergreek (18.08.2009 um 10:21 Uhr) Grund: Den Code in seine Schranken verwiesen

  2. #2
    TP-Moderator Cybergreek lebt für das TP und seine User Cybergreek lebt für das TP und seine User Cybergreek lebt für das TP und seine User Cybergreek lebt für das TP und seine User Cybergreek lebt für das TP und seine User Cybergreek lebt für das TP und seine User Avatar von Cybergreek
    Registriert seit
    Nov 2005
    Ort
    Köln
    Beiträge
    1.608
    Auf den ersten Blick ist hier schon ein Fehler:
    PHP-Code:
    echo $row['vorname'], ['name'], ['alter'], ['ort'] ; 
    Das Komma bringt Dir hier nichts. Probier erstmal:
    PHP-Code:
    echo $row['vorname']; 
    Hilfreich wäre es aber, wenn Du uns sagen würdest, welche "errors" Du bekommst.
    Hilfreich wäre auch den Code in [php]-Tags einzubinden.
    Grüße vom Griechen,
    Cybergreek!

    everygain Translator - eine Firefox-Erweiterung, damit der Grieche Euch besser versteht

  3. #3
    TP-Member veil macht alles soweit korrekt
    Registriert seit
    Aug 2009
    Beiträge
    53
    OK mache ich jetzt so: echo $row['vorname'];

    Ich habe auch einen Fehler entdeckt:

    ('SELECT * FROM `testdatenbank` WHERE `vorname`=\''.$suche.'\'' , $conID);

    dann kommt diese Meldung:

    Warning: mysql_fetch_array() expects parameter 1 to be resource, boolean given in C:\xampplite\htdocs\untitled_2.php on line 23


    jetzt ohne Fehler:

    ('SELECT * FROM `testtabelle` WHERE `vorname`=\''.$suche.'\'' , $conID);

    jetzte kommt zwar keine Meldung mehr, aber auch keine Suchergebnis...

    Ich verstehe das absolut nicht...

    Und Die PHP Tags habe ich doch eingefügt, oder ?
    Geändert von veil (18.08.2009 um 10:46 Uhr) Grund: Vergessen

  4. #4
    TP-Specialist jayjay ist ein richtiges Arbeitstier - DANKE jayjay ist ein richtiges Arbeitstier - DANKE jayjay ist ein richtiges Arbeitstier - DANKE jayjay ist ein richtiges Arbeitstier - DANKE Avatar von jayjay
    Registriert seit
    May 2003
    Ort
    krefeld
    Beiträge
    3.631
    moin, dazu hast du einen tippfehler:
    PHP-Code:
    $daten mysql_query('SELECT * FROM `testdatenabnk` WHERE `vorname`=\''.$suche.'\'' $conID); 
    ich denke es sollte "testdatenbank" heissen
    und wäre like nicht sinnvoller?
    computer tun nur das was man ihnen sagt, meistens

  5. #5
    TP-Member veil macht alles soweit korrekt
    Registriert seit
    Aug 2009
    Beiträge
    53
    Hallo jayjay,

    stimmt, das war ein tippfehler, aber es läuft trotzdem nicht :-(

    Wie füge ich denn den Befehl "LIKE" ein ?

  6. #6
    TP-Specialist jayjay ist ein richtiges Arbeitstier - DANKE jayjay ist ein richtiges Arbeitstier - DANKE jayjay ist ein richtiges Arbeitstier - DANKE jayjay ist ein richtiges Arbeitstier - DANKE Avatar von jayjay
    Registriert seit
    May 2003
    Ort
    krefeld
    Beiträge
    3.631
    zb:
    PHP-Code:
    SELECT  
    FROM  tabelle 
    WHERE  vorname  LIKE  
    '%suchtext%' 
    computer tun nur das was man ihnen sagt, meistens

  7. #7
    TP-Moderator Cybergreek lebt für das TP und seine User Cybergreek lebt für das TP und seine User Cybergreek lebt für das TP und seine User Cybergreek lebt für das TP und seine User Cybergreek lebt für das TP und seine User Cybergreek lebt für das TP und seine User Avatar von Cybergreek
    Registriert seit
    Nov 2005
    Ort
    Köln
    Beiträge
    1.608
    Zitat Zitat von veil Beitrag anzeigen
    Und Die PHP Tags habe ich doch eingefügt, oder ?
    Ne, das war ich


    Du könntest Dir Deine Select-Abfrage per echo mal ausgeben lassen und diese dann direkt (z.B. in phpMyAdmin) ausführen. Dann könnte man sehen, was wirklich abgefragt wird.
    Grüße vom Griechen,
    Cybergreek!

    everygain Translator - eine Firefox-Erweiterung, damit der Grieche Euch besser versteht

  8. #8
    TP-Member veil macht alles soweit korrekt
    Registriert seit
    Aug 2009
    Beiträge
    53
    ne, das funktioniert alles nicht.

    bekomme jetzt:

    Parse error: syntax error, unexpected T_STRING in C:\xampplite\htdocs\untitled_2.php on line 23

  9. #9
    TP-Moderator Cybergreek lebt für das TP und seine User Cybergreek lebt für das TP und seine User Cybergreek lebt für das TP und seine User Cybergreek lebt für das TP und seine User Cybergreek lebt für das TP und seine User Cybergreek lebt für das TP und seine User Avatar von Cybergreek
    Registriert seit
    Nov 2005
    Ort
    Köln
    Beiträge
    1.608
    Zitat Zitat von veil Beitrag anzeigen
    ne, das funktioniert alles nicht.

    bekomme jetzt:

    Parse error: syntax error, unexpected T_STRING in C:\xampplite\htdocs\untitled_2.php on line 23
    Was heißt denn "alles" und "jetzt"? Du musst schon ein bisschen ausführlicher werden, wenn Du Hilfe suchst.
    Grüße vom Griechen,
    Cybergreek!

    everygain Translator - eine Firefox-Erweiterung, damit der Grieche Euch besser versteht

  10. #10
    TP-Member veil macht alles soweit korrekt
    Registriert seit
    Aug 2009
    Beiträge
    53
    <body>
    <?php
    $db_host = "localhost";
    $db_user = "root";
    $db_pass = "";
    $db_name = "testdatenbank";

    $suche = $_POST['suchbegriff'];
    // Verbindung oeffnen und Datenbank ausweahlen
    $conID = mysql_connect( $db_host, $db_user, $db_pass ) or die( "Die Datenbank konnte nicht erreicht werden!" );
    if ($conID)
    {
    mysql_select_db( $db_name, $conID );
    }

    $daten = mysql_query(SELECT *
    FROM testtabelle
    WHERE vorname LIKE '%suche%' , $conID);
    while($row=mysql_fetch_array($daten))
    {
    echo $row['vorname'];
    }
    ?>
    </body>
    </html>



    so geht es nicht.

  11. #11
    TP-Moderator Cybergreek lebt für das TP und seine User Cybergreek lebt für das TP und seine User Cybergreek lebt für das TP und seine User Cybergreek lebt für das TP und seine User Cybergreek lebt für das TP und seine User Cybergreek lebt für das TP und seine User Avatar von Cybergreek
    Registriert seit
    Nov 2005
    Ort
    Köln
    Beiträge
    1.608
    Die Funktion mysql_query() erhält einen String als Parameter. Den musst Du auch dementsprechend in Anführungsstriche setzen, da es sonst nicht funktioniert.


    Und nochmal die Erinnerung an die php-Tags....
    Grüße vom Griechen,
    Cybergreek!

    everygain Translator - eine Firefox-Erweiterung, damit der Grieche Euch besser versteht

  12. #12
    TP-Member veil macht alles soweit korrekt
    Registriert seit
    Aug 2009
    Beiträge
    53
    so etwa ?

    (SELECT * FROM "testtabelle" WHERE "vorname" LIKE '%suche%' ,$conID);

    die php-tags habe ich doch schon drin

  13. #13
    TP-Specialist jayjay ist ein richtiges Arbeitstier - DANKE jayjay ist ein richtiges Arbeitstier - DANKE jayjay ist ein richtiges Arbeitstier - DANKE jayjay ist ein richtiges Arbeitstier - DANKE Avatar von jayjay
    Registriert seit
    May 2003
    Ort
    krefeld
    Beiträge
    3.631
    teste das mal
    PHP-Code:
    $daten mysql_query("
        SELECT
            *
        FROM
            testtabelle
        WHERE
            vorname LIKE '%$suche%'
    "
    ); 
    computer tun nur das was man ihnen sagt, meistens

  14. #14
    TP-Moderator Cybergreek lebt für das TP und seine User Cybergreek lebt für das TP und seine User Cybergreek lebt für das TP und seine User Cybergreek lebt für das TP und seine User Cybergreek lebt für das TP und seine User Cybergreek lebt für das TP und seine User Avatar von Cybergreek
    Registriert seit
    Nov 2005
    Ort
    Köln
    Beiträge
    1.608
    Zitat Zitat von veil Beitrag anzeigen
    so etwa ?

    (SELECT * FROM "testtabelle" WHERE "vorname" LIKE '%suche%' ,$conID);
    Vergleich mal Deinen ursprünglichen mysql_query Aufruf und den neuen:
    PHP-Code:
    $daten mysql_query('SELECT * FROM `testdatenabnk` WHERE `vorname`=\''.$suche.'\'' $conID); 
    Hier hast Du nämlich die Abfrage als String übergeben.

    Zitat Zitat von veil Beitrag anzeigen
    die php-tags habe ich doch schon drin
    Ich rede von Deinen Postings hier. Vergleich mal Dein erstes Posting, dass ich bearbeitet habe und Dein letztes. Wenn Du den code hier in [php]-Tags setzt, dann hilft das denjenigen, die helfen sollen.
    Grüße vom Griechen,
    Cybergreek!

    everygain Translator - eine Firefox-Erweiterung, damit der Grieche Euch besser versteht

  15. #15
    TP-Member veil macht alles soweit korrekt
    Registriert seit
    Aug 2009
    Beiträge
    53
    ich weiss jetzt nicht wo der fehler steckt.

    oder steckt der fehler im formular? ist das denn richtig "angebunden" ?

+ Antworten
Seite 1 von 3 1 2 3 LetzteLetzte

Ähnliche Themen

  1. link im Formular - Übergabe des Wertes durch Formular
    Von alexf812 im Forum Javascript & Ajax
    Antworten: 2
    Letzter Beitrag: 28.03.2008, 19:45
  2. Antworten: 0
    Letzter Beitrag: 22.07.2007, 17:44
  3. usb auf Lan verbinden
    Von Willowbe im Forum Hardware
    Antworten: 2
    Letzter Beitrag: 04.05.2006, 19:51
  4. formular mit php prüfen und fehler im formular anzeigen lassen
    Von tobias82 im Forum Webdesign allgemein
    Antworten: 22
    Letzter Beitrag: 01.04.2006, 21:51
  5. PHP-Formular leere Formular-Felder nicht versenden
    Von dasko im Forum Traum-Dynamik
    Antworten: 5
    Letzter Beitrag: 16.01.2005, 21:28

Stichworte

Aktive Benutzer

Aktive Benutzer

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

     

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51