Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Błąd braku błędu [php]
Puciek
post
Post #1


TAO programowania


Grupa: Zarejestrowani
Postów: 340
Pomógł: 3
Dołączył: 25.03.2003
Skąd: ze słoika

Ostrzeżenie: (30%)
XX---


[php:1:ac4c405705]
<?
//usuwanie spacji i spawdzanie czy cokolwiek zostało
if (trim($pytanie) != "")
{

//usuwanie przecinków które tylko przeszkadzają
$pytanie = str_replace(",", "", $pytanie);

//rozbijanie przez spacje
$arr = explode(" ", $pytanie);

//pobieranie ilości elementów
$ilosc=sizeof($arr);

//ustawianie $ilości2 oraz $znaleziono na 0
$ilosc2="0";
$znaleziono="0";

//pętla sprawdzajaca wyszukiwania
while($ilosc>$ilosc2)
{
$zapytanie = "SELECT odp, obrazek FROM pytania WHERE 'slowo' LIKE '$arr[$ilosc2]%'";
$wykonaj = mysql_query($zapytanie);
$znaleziono = mysql_num_rows($wykonaj);
if($znaleziono=="0")
{
++$ilosc2;
}
else
{
$zapytanie = "SELECT odp, obrazek FROM pytania WHERE 'slowo' LIKE '$arr[$ilosc2]%'";
$wykonaj = mysql_query($zapytanie);
$odp = mysql_fetch_array($wykonaj);
$ilosc2=$ilosc;
}
}
//przed chwilą zakończyła się pentla.
//teraz sprawdzam czy cokolwiek znaleziono, jeśli nei to wyświetlam odpowiednią wiadomość
if($znaleziono=="0")
{
$odpowiedz="Z racji że jestem we wczesnej wersji produkcji to nie znam odpowiedzi na wszystkie pytania, napisz to pytanie mojemu <a href=mailto:pichus@poczta.fm>autorowi</a>, a za niedługo pojawi się odpowiednia łatka.";
$minka="powazny";
}
else
{
$odpowiedz="$odp[odp]";
$minka="$odp[obrazek]";
}
}
//jeżeli nie zosało...
else
{
$odpowiedz="A pisać umiesz ?";
$minka="pytajacy";
}
?>
[/php:1:ac4c405705]

Kiedy daje mu jakies słówko to on szuka tylko po pierwszej literze - dlaczego ?

KOD BAZY DANYCH:

Kod
CREATE TABLE `pytania` (   `slowo` char(20) default '0',   `odp` char(255) default '0',   `obrazek` char(40) default NULL ) TYPE=MyISAM;



INSERT INTO pytania (slowo, odp, obrazek) VALUES("stworzył", "Mojim wspaniałym twórcš oraz mentorem jest wielki Puciek", "zachwycony");

INSERT INTO pytania (slowo, odp, obrazek) VALUES("jeste?", "Jetsem PuciTokiem - inteligentnym botem który jes we wczesnej fazie programowania . Mojim wspaniałym twórcš jest <a href=mailto:pichus@poczta.fm>Puciek</a>.", "neutralny");


--------------------

http://puciek.wordpress.com prywatnie o świecie
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 9)
uboottd
post
Post #2





Grupa: Zarejestrowani
Postów: 384
Pomógł: 0
Dołączył: 3.04.2003
Skąd: Chorzow

Ostrzeżenie: (0%)
-----


w: WHERE 'slowo' LIKE '$arr[$ilosc2]%' jestes pewien ze wszystkie znaczki sa takie jak powinny ? Szczegolnie to wokol wyrazu slowo ?
Go to the top of the page
+Quote Post
Puciek
post
Post #3


TAO programowania


Grupa: Zarejestrowani
Postów: 340
Pomógł: 3
Dołączył: 25.03.2003
Skąd: ze słoika

Ostrzeżenie: (30%)
XX---


Tak.

Bład polega na tym że reagyuje tylko na litere s, znaczy że wyszukuje tylko jeżeli taka jest wpisana.


--------------------

http://puciek.wordpress.com prywatnie o świecie
Go to the top of the page
+Quote Post
DeyV
post
Post #4





Grupa: Zarząd
Postów: 2 277
Pomógł: 6
Dołączył: 27.12.2002
Skąd: Wołów/Wrocław




wydrukuj to twoje $zapytanie, i wrzuć do phpmyadmin, a następnie męcz je tak długo, aż będzie działać poprawnie...


--------------------
"Niezależnie od tego, jakie masz osiągnięcia, ktoś Ci pomaga..."
Go to the top of the page
+Quote Post
Puciek
post
Post #5


TAO programowania


Grupa: Zarejestrowani
Postów: 340
Pomógł: 3
Dołączył: 25.03.2003
Skąd: ze słoika

Ostrzeżenie: (30%)
XX---


Ale ono działa poprawnie, 2 godziny to ze Scannerem i nie znaleźliśmy błędu.


--------------------

http://puciek.wordpress.com prywatnie o świecie
Go to the top of the page
+Quote Post
DeyV
post
Post #6





Grupa: Zarząd
Postów: 2 277
Pomógł: 6
Dołączył: 27.12.2002
Skąd: Wołów/Wrocław




macie jakiś serwer, gdzie by to mozna było udostępnić (znaczy pokazać) ?


--------------------
"Niezależnie od tego, jakie masz osiągnięcia, ktoś Ci pomaga..."
Go to the top of the page
+Quote Post
lisu
post
Post #7





Grupa: Zarejestrowani
Postów: 100
Pomógł: 0
Dołączył: 25.01.2003
Skąd: mazury, wawa

Ostrzeżenie: (0%)
-----


[php:1:3813abb1e5]
<?

$ilosc2=0;
$znaleziono=0;
//zamien tak wszedzie

?>
[/php:1:3813abb1e5]


--------------------
--
Carpe Diem
Go to the top of the page
+Quote Post
scanner
post
Post #8





Grupa: Zarząd
Postów: 3 503
Pomógł: 28
Dołączył: 17.10.2002
Skąd: Wrocław




DeyV: http://www.rpwik.chorzow.pl/tmp/ tu jest działające.


--------------------
scanner.info
Warto pamiętać: KISS, DRY
Go to the top of the page
+Quote Post
uboottd
post
Post #9





Grupa: Zarejestrowani
Postów: 384
Pomógł: 0
Dołączył: 3.04.2003
Skąd: Chorzow

Ostrzeżenie: (0%)
-----


Ech, mam wam bardziej podpowiadac ?
Kod
SELECT odp, obrazek FROM pytania WHERE 'slowo' LIKE '$arr[$ilosc2]%'


dziala w nastepujacy sposob:
dla kazdego wiersza porownoje _string_ 'slowo' z wartoscia ktora jest wpisana w $arr[$ilosc2], i jesli poczatek jest zgodny to git.

A to chyba nie jest to o co chodzilo ?

powinno byc:
Kod
SELECT odp, obrazek FROM pytania WHERE slowo LIKE '$arr[$ilosc2]%'

[/code]
Go to the top of the page
+Quote Post
scanner
post
Post #10





Grupa: Zarząd
Postów: 3 503
Pomógł: 28
Dołączył: 17.10.2002
Skąd: Wrocław




No taaa... nie zwróciłem uwagi, że tam jest ' a nie `


--------------------
scanner.info
Warto pamiętać: KISS, DRY
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 21.08.2025 - 09:12