Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP]Słownik w PHP
Forum PHP.pl > Forum > PHP
lwc
Witam, jestem w trakcie tworzenia malutkiego słownika. Wszystko było fajnie do momentu, kiedy nadszedł czas na drugą część. Już tłumaczę o co chodzi. Otóż mam w bazie, w tabeli, kolumny zb_slowo oraz pol_slowo. W formularzu osoba wpisuje słowo polskie i mój skrypt powinien w bazie znaleźć to słowo, i wypisać na ekran tłumaczenie z kolumny zb_slowo pasującego do tego pol_slowo. Tylko, że w niektórych wyrazach, jest tak, że mają one kilka tłumaczeń i w bazie wygląda to tak:

Kod
[pol_slowo] || [zb_slowo]
     Spoko, w porządku || KOKO


Oczywiście to taki przykład, baza to MySQL. Podam też na wszelki wypadek skrypt. Myślałem nad funkcją like, ale niestety w moim wykonaniu nie działała ona tak jak chciałem. A chciałbym, aby wpisane słowo w formularzu, np "Spoko" dało rezultat "KOKO", bo skąd ktoś ma wiedzieć, że w bazie jest jeszcze ", w porządku". Mam nadzieję, że zostałem zrozumiany i otrzymam pomoc.

  1. <?php
  2. function Translate($slowo) {
  3.  
  4.    include('config.php');
  5.    
  6.    $slowo = htmlspecialchars(strip_tags(addslashes($_POST['slowo'])));
  7.    $wartosc = htmlspecialchars(strip_tags(addslashes($_POST['wartosc'])));    
  8.    
  9.    if(isset($_POST['submit'])) {
  10.        
  11.        if(!empty($slowo)) {
  12.            
  13.            if($_POST['wartosc'] == 1) {
  14.            
  15.            $query = $polaczenie -> query(&#092;"SELECT * FROM baza WHERE zb_slowo = '$slowo' \");
  16.            if($query) {
  17.                
  18.                while($row = mysqli_fetch_array($query, MYSQL_ASSOC)) {
  19.                    
  20.                    echo &#092;"Wyniki tłumaczenia dla słowa: \".\"\".$slowo.\"\".\"\";
  21.                    echo &#092;"\";
  22.                    echo &#092;"\";
  23.                    echo &#092;"\".\"\".$row['pol_slowo'].\"\".\"\n\";
  24.                }
  25.            }
  26.            if(mysqli_num_rows($query) == 0) {
  27.                
  28.                echo('Brak tłumaczenia !');
  29.            }
  30.            }
  31.            
  32.            if($_POST['wartosc'] == 2) {
  33.                
  34.            $query = $polaczenie -> query(&#092;"SELECT * FROM baza WHERE pol_slowo  Like '$slowo%' \");
  35.            if($query) {
  36.                
  37.                while($row = mysqli_fetch_array($query, MYSQL_ASSOC)) {
  38.                    
  39.                    echo &#092;"Wyniki tłumaczenia dla słowa: \".\"\".$slowo.\"\".\"\";
  40.                    echo &#092;"\";
  41.                    echo &#092;"\";
  42.                    echo &#092;"\".\"\".$row['zb_slowo'].\"\".\"\n\";
  43.                }
  44.            }
  45.            if(mysqli_num_rows($query) == 0) {
  46.                
  47.                echo('Brak tłumaczenia !');
  48.            }
  49.                
  50.            }
  51.        }
  52.        else {
  53.            
  54.            echo('Pole nie zostało wypełnione !');
  55.        }
  56.    }
  57. }
  58.  
  59. ?>


Skrypt, który dotyczy tłumaczenia, o którym mówię zaczyna się od instrukcji warunkowej "jeżeli zmienna post wartosc jest równa 2". Dziękuje z góry za poświęcony czas.
erix
Cytat
A chciałbym, aby wpisane słowo w formularzu, np "Spoko" dało rezultat "KOKO", bo skąd ktoś ma wiedzieć, że w bazie jest jeszcze ", w porządku". Mam nadzieję, że zostałem zrozumiany i otrzymam pomoc.

Zrób sobie relację jeden-do-wielu.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.