Ankündigung

Einklappen
Keine Ankündigung bisher.

Server Error bei Suche von Wörtern mit Umlauten

Einklappen

Neue Werbung 2019

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

  • Server Error bei Suche von Wörtern mit Umlauten

    Kann mir jemand helfen?
    Bei der Suche von Stichwörtern mit Umlauten in meiner MySQL-Datenbank mittels PHP-Programm bekomme ich die Ausschrift:

    Internal Server Error ...

    Bei allen anderen Stichwörtern ist es kein Problem.
    Woran kann das liegen?


  • #2
    Wie suchst du denn? Ein wenig Code hilft vielleicht. Und was soll das: http://www.phpfriend.de/forum/viewtopic.php?t=16848
    Gruss
    L

    Kommentar


    • #3
      Vielleicht kannst du hiermit etwas anfangen?
      Stichwörter werden aus einer Liste ausgesucht und
      in ein Eingabefeld übergeben und dann in der Datenbank gesucht
      und die entsprechende Datei hierzu angezeigt.
      Die Wörter mit Umlaute werden erst gar nicht in das Eingabefeld übernommen. Stattdessen erscheint gleich die Fehlerausschrift.




      <form action="suchen.php" method="POST">

      <?php
      $value1 = ucfirst($_REQUEST["wert1"]);
      $value2 = ucfirst($_REQUEST["wert2"]);

      #
      print "<input name='suchbegriff1' type='text' value='$value1' size='24' maxlength='30'>";
      ?>



      <input type="radio" name="verknuepfung" value="oder" checked>oder
      <input type="radio" name="verknuepfung" value="und">und
      <input type="radio" name="verknuepfung" value="nicht">nicht
      </p>


      <?php
      print"

      <input name='suchbegriff2' type='text' value='$value2' size='24' maxlength='30'></p>";
      ?>

      <input type="submit" name="Knopf1" value="suchen" onClick="self.location.href='daten.html'" target="mainframe">




      <input type="reset" name="Knopf2" value="l&ouml;schen" onClick="self.location.href='stichwort.php'" target="mainframe">


      </form>
      </p>



      </td>
      <td rowspan="10" bgcolor="#DDF0FF" width="350" valign="top">


      <?php
      # Datenbankverbindung
      $link = mysql_connect("127.0.0.1", "root", "");
      $query = "use testneu";
      if (!mysql_query($query, $link)) die("Datenbank testneu existiert nicht.
      \n");

      $query = "SELECT swname, swlangname FROM stichworttab ORDER BY swname";
      $result = mysql_query($query, $link);

      if (!$result) die("Anfrage $query scheitert.
      ");

      print ("<font face='Times New Roman' size='4' color='#0000a0'>Stichwort&uuml;bersicht</font>");
      print ("<table cellspacing=25 cellpadding=0 border='0' bordercolor='#ffffff'>");
      print ("<tr><td valign=top><font face='Arial' size='2' color='#0000a0'>");

      $a = 0; # zählt die gefundenen Indizes (Buchstaben)
      while($d = mysql_fetch_array($result))
      {
      while(list($k, $v) = each($d))
      {
      if ((isset($v)) & ($k==='swname'))
      {
      if (!($v==$vorgaenger))
      {
      $a++;
      if ($value1)
      {
      $wert1=$value1;
      $wert2=$v;
      }
      else {$wert1="$v"; $wert2=""; }

      if (($a % 20) == 1) # Anzahl Stichworte pro Spalte: 15

      print ("</font></td><td valign=top><font face='Arial' size='2' color='#0000a0'>");

      print ("". ucfirst($v)."
      ");

      }
      $vorgaenger=$v;
      }

      }
      }
      print ("</font></td></tr></table>");

      ?>

      Kommentar


      • #4
        Ich habe zwar nicht alles durchgelesen (die Code-Funktion wäre da hilfreich), aber wenn ich dich richtig verstehe, werden die Variablen mit den Umlauten schon gar nicht übergeben. Ich habe das mal mit ein paar Zeilen deines Codes probiert und keine Probleme gehabt. Scheinbar muss es irgendwo in deiner Konfiguration liegen. Hier mein Test-Code:
        form.php:
        Code:
        <?php
           $sw = array('qwer', 'tzui', 'opüè', 'äàöé', 'lkjh', 'Ähgfd', 'saÖYX');
        	echo "<form action='ab.php' method='post'>\n";
        	echo "<select size='1' name='wert1' />";
        	for ($i = 0;$i < count($sw);$i ++)
        	{
        	    echo "<option value='$sw[$i]'>$sw[$i]</option>";
        	}
        	echo "</select>
        ";
        	echo "<select size='1' name='wert2' />";
        	for ($i = (count($sw)) - 1;$i >= 0;$i --)
        	{
        	    echo "<option value='$sw[$i]'>$sw[$i]</option>";
        	}
        	echo "</select>
        ";
        	echo "<input type='submit' />";
           echo "</form>\n";
        ?>
        ab.php (dein Code):
        Code:
        <form action="suchen.php" method="POST">
        
        <?php
        $value1 = ucfirst($_REQUEST["wert1"]);
        $value2 = ucfirst($_REQUEST["wert2"]);
        
        #
        print "<input name='suchbegriff1' type='text' value='$value1' size='24' maxlength='30'>";
        ?>
        
        
        
        <input type="radio" name="verknuepfung" value="oder" checked>oder
        <input type="radio" name="verknuepfung" value="und">und
        <input type="radio" name="verknuepfung" value="nicht">nicht
        </p>
        
        
        <?php
        print"
        
        <input name='suchbegriff2' type='text' value='$value2' size='24' maxlength='30'></p>";
        ?>
        
        <input type="submit" name="Knopf1" value="suchen" onClick="self.location.href='daten.html'" target="mainframe">
        
        
        
        
        <input type="reset" name="Knopf2" value="l&ouml;schen" onClick="self.location.href='stichwort.php'" target="mainframe">
        
        
        </form>
        Gruss
        L

        Kommentar


        • #5
          Danke erstmal für die schnelle Antwort.
          Schaue morgen weiter.

          Kommentar

          Lädt...
          X