Ankündigung

Einklappen
Keine Ankündigung bisher.

Suche Formular

Einklappen

Neue Werbung 2019

Einklappen
X
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Suche Formular

    Ahoy Leutz .. ich freunde mich gerade mit PHP an.. und habe da auch schon ein kleines Problem im moment baue ich mir ein Download script und ich scheitere beim suchscript ... denn wenn ich (sourccode) die phpdatei aufrufe kommt :

    Fatal error: Call to undefined function show() in C:\AppServ\www\chcms\inc\suche.php on line 43


    in der database stehen nur die SQL daten...



    Code:
        <div id="contentr">
          <div class="contentbox">
    
            <div class="contenthead"><div class="contenthead_inner">Suche nach  <i><? echo $_GET['Suche']; ?></i></div></div>
    
    <?
    include("Datenbank.php");
    $suche = $_GET['Suche'];
    
    $abfrage = "SELECT * FROM C4y_Downloads where Titel like '%$suche%' or Interpret like '%$suche%' order by id desc LIMIT 0,200";
    $ergebnis = mysql_query($abfrage);
    if (mysql_num_rows($ergebnis) != 0)
    {
    
    show($ergebnis);
    
    }
    else
    {
    ?>
    <br />
    <table style="background-color:#CCCCCC;width:100%;text-align:center">
    
    	<tr>
    
            	<td>
                    <img src="images/gfx/error.png" alt="">
                    </td>
    
                    <td>
                    Zu ihrer Suchanfrage <i><? echo $suche; ?></i> wurden leider keine Dowloads gefunden!
                    </td>
    
            </tr>
    
    </table>
    <br />
    <?
    }
    ?>
    
          </div>
        </div>

    MFG Sp4x


  • #2
    Die Funktion show() existiert nicht

    Kommentar


    • #3
      mhhhh und wie mach ich des des funtz wie definiere ich die show funktiuon

      Kommentar


      • #4
        PHP-Code:
        function show($ergebnis)
        {
        //code...



        Kommentar


        • #5
          Was soll denn überhaupt passieren?
          Willst Du evtl. nur etwas auf dem Bildschirm ausgeben? Evtl. zu Testzwecken?
          Dann verwechselst Du show() mit echo bzw. print.

          Da aber $ergebnis eine ResourceID ist kannst Du die nicht einfach ausgeben.
          Du mußt einmal die Resource durchlaufen und jedes Elment per echo ausgeben.

          Dann macht es natürlich Sinn - sofern öfter solche Ausgaben kommen - eine Funktion dafür zu schreiben.

          Aber wenn Du mit der Fehlermeldung schon nichts anfangen kannst, bezweifle ich, daß die Verwendung von show aus Deiner Feder stammt.
          Ich tippe mal auf "aus verschiedenen Quellen wild zusammenkopiert"...
          Competence-Center -> Enjoy the Informatrix
          PHProcks!Einsteiger freundliche TutorialsPreComposed Packages

          Kommentar


          • #6
            Jap das stimmt das es nicht komplett von mir ist .. ich habe aus diversen Quelltexten mir das zusammengebaut

            Ich brauche ein einfaches Suchformular

            Das eine Datenbank durchsucht ... nach Titel (z.b Downloads Titel des Downloads) bei einem match den Download anzeigen (anklickbarer link) und sonst nein " nix dabei bitte nach was anderem suchen" fehlermeldung...

            aber bevor ich hier ankomme . hey ich brauche was helft mir .. .wollte ich es ersteinmal selber probieren aber ich bin daran gescheitert .... auweia

            MFG Sp4x

            Kommentar


            • #7
              Also wenns nur ne Suche nach Einträgen ist die dann als Link ausgespuckt werden kann man es so halten:
              PHP-Code:
              <?php
              include 'var.inc'// Hier hab ich die Variablen für mysqli() definiert.. man kann auch direkt mysqli('localhost','benutzer','passwort','datenbank') schreiben
              echo'<form id="form1" name="form1" method="post" action="'.$_SERVER['PHP_SELF'].'">
                <label>Titel oder Interpret
                  <input name="suchfeld" type="text" id="suchfeld" size="100" />
                </label>
                    <input type="submit" name="suchen" id="suchen" value="Suchen" />

              </form>'
              ;

              $suche $_POST['suchfeld'];

              $db = new mysqli($host,$user,$password,$database);
              $sql ="SELECT interpret,titel,datei FROM mp3 WHERE titel LIKE '%$suche%' or interpret LIKE '%$suche%' ORDER BY id DESC LIMIT 0,200";
              $result $db->query($sql);
              if(!
              $result){
                  die(
              $db->error);
              }
              while(
              $row $result->fetch_assoc()){
                  echo
              '<a href="'.$row['datei'].'">'.$row['interpret'].' - '.$row['titel'].'</a>';
              }

              ?>
              Die Datenbank nennt sich "plattenladen" und hat eine Tabelle die sich "mp3" nennt.
              Die beinhaltet die Zeilen id,interpret,titel und datei .. ich geh beim TE davon aus das sowas im Schlaf geht

              Bei Fehlern bitte melden, sei es veraltet oder einfacher zu halten..

              Kommentar


              • #8
                Bitte nicht $_SERVER['PHP_SELF'] verwenden und anderen beibringen!
                Entweder $_SERVER['SCRIPT_NAME'] oder action einfach leer lassen.

                Dann:
                PHP-Code:
                $suche $_POST['suchfeld']; // UNGEFILTERT ?!?!?!

                // bitte so
                $suche htmlspecialchars($_POST['suchfeld']); 
                Competence-Center -> Enjoy the Informatrix
                PHProcks!Einsteiger freundliche TutorialsPreComposed Packages

                Kommentar


                • #9
                  Oh gut zu wissen, ich steck selbst noch in Kinderschuhen seitens PHP.

                  könnte man htmlspecialchars() eigentlich mit mysql_real_escape_string() kombinieren oder wäre das doppelt gemoppelt?

                  Kommentar


                  • #10
                    htmlspecialchars() nutzt Du um Formulardaten grundsätzlich für die Weterverarbeitung (z.B. Ausgabe) zu filtern.
                    Beim Eintragen dieser Werte in eine DB solltest Du prinzipiell immer mysql_real_escape_string() verwenden!
                    Competence-Center -> Enjoy the Informatrix
                    PHProcks!Einsteiger freundliche TutorialsPreComposed Packages

                    Kommentar


                    • #11
                      wieder was gelernt, danke

                      Kommentar


                      • #12
                        Ich danke euch erstmal für eure super hilfe

                        Colophoniaz Danke dir dafür ... nur mache ich glaube irgentwas falsch

                        ich hab die datenbank.php included also include 'var.inc'; nen include 'datenbank.php'; draus gemacht und jaa in meiner datenbank php stehen auch die daten drinne aber iwie frisst der die net

                        so sieht meine datenbank.php aus

                        PHP-Code:
                        <?
                        $server   = "localhost";
                        $username = "root";
                        $userpass = "c123123ddd";
                        $db       = "download";

                        $dbcnx = @mysql_connect($server, $username, $userpass) or die ("Derzeit ist leider keine Verbindung zum Datenbank-Server m&ouml;glich");
                        @mysql_select_db($db) or die ("Derzeit ist leider keine Verbindung zur Datenbank möglich");
                        ?>
                        SQL daten abgeändert...



                        ?? kann mir jemand helfen ?

                        MFG Sp4x

                        Kommentar


                        • #13
                          Zitat von Sp4x Beitrag anzeigen
                          ...aber iwie frisst der die net ...

                          Aha und was genau heißt das jetzt? Gibt es ne Fehlermeldung? Mach mal die "@" Zeichen weg und dann sag bitte, was nicht stimmt! ERROR_REPORTING(E_ALL); und mysql_error(); ist auch immer nicht schlecht um Fehler anzuzeigen!

                          Wolf29
                          while (!asleep()) sheep++;

                          Unterschätze nie jemanden der einen Schritt zurück geht! Er könnte Anlauf nehmen.

                          Kommentar


                          • #14
                            Fehlermeldung : No database selected

                            Kommentar


                            • #15
                              http://www.php.de/php-einsteiger/489...rundlagen.html
                              --

                              „Emoticons machen einen Beitrag etwas freundlicher. Deine wirken zwar fachlich richtig sein, aber meist ziemlich uninteressant.
                              Wenn man nur Text sieht, haben viele junge Entwickler keine interesse, diese stumpfen Texte zu lesen.“


                              --

                              Kommentar

                              Lädt...
                              X