Skocz do zawartości

Witamy w Nieoficjalnym polskim support'cie AMX Mod X

Witamy w Nieoficjalnym polskim support'cie AMX Mod X, jak w większości społeczności internetowych musisz się zarejestrować aby móc odpowiadać lub zakładać nowe tematy, ale nie bój się to jest prosty proces w którym wymagamy minimalnych informacji.
  • Rozpoczynaj nowe tematy i odpowiedaj na inne
  • Zapisz się do tematów i for, aby otrzymywać automatyczne uaktualnienia
  • Dodawaj wydarzenia do kalendarza społecznościowego
  • Stwórz swój własny profil i zdobywaj nowych znajomych
  • Zdobywaj nowe doświadczenia

Dołączona grafika Dołączona grafika

Guest Message by DevFuse
 

Zdjęcie
PHP

[ROZWIĄZANE] Problem z wyszukiwaniem textu

php

  • Zamknięty Temat jest zamknięty
13 odpowiedzi w tym temacie

#1 mimo114

    Pomocny

  • Użytkownik

Reputacja: 4
Nowy

  • Postów:72
  • Imię:Mateusz
  • Lokalizacja:Lubliniec
Offline

Napisano 24.01.2013 17:11

Witam.
Mam dzisiaj pewien problem z takim oto skryptem:
Spoiler

no i niestety kod ten działa tylko 1 raz tzn. że prawdza tak jakby tylko literkę a ale bcd już nie.
Z góry dziekuje
  • +
  • -
  • 0

#2 DarkGL

    Nie oddam ciasteczka !

  • Administrator

Reputacja: 6 555
Godlike

  • Postów:11 980
  • GG:
  • Steam:steam
  • Imię:Rafał
  • Lokalizacja:Warszawa
Offline

Napisano 24.01.2013 17:15

$acces = explode(" ",$acces1);

nigdzie nie deklarujesz zmiennej acces1

Użytkownik DarkGL edytował ten post 24.01.2013 17:15

  • +
  • -
  • 0

#3 mimo114

    Pomocny

  • Autor tematu
  • Użytkownik

Reputacja: 4
Nowy

  • Postów:72
  • Imię:Mateusz
  • Lokalizacja:Lubliniec
Offline

Napisano 24.01.2013 18:09

bo ogólnie to jest funkcja i to jest pobierane w funkcji
  • +
  • -
  • 0

#4 DarkGL

    Nie oddam ciasteczka !

  • Administrator

Reputacja: 6 555
Godlike

  • Postów:11 980
  • GG:
  • Steam:steam
  • Imię:Rafał
  • Lokalizacja:Warszawa
Offline

Napisano 24.01.2013 18:44

powiem inaczej poproszę cały kod i jak go używasz
  • +
  • -
  • 0

#5 mimo114

    Pomocny

  • Autor tematu
  • Użytkownik

Reputacja: 4
Nowy

  • Postów:72
  • Imię:Mateusz
  • Lokalizacja:Lubliniec
Offline

Napisano 24.01.2013 19:09

Function checkacces($accesnow="",$accesb="")
{
$ident=0;
$kt=0;
$wynik;
$accesaray=explode(" ",$accesb);
foreach($accesaray as $value)
{

if(strpos($accesnow,''.$value.'')!== 0)
{
$wynik[$kt]=$ident;
$kt++;
echo $value."</br>";
}
$ident++;
}
foreach($wynik as $val)
{
$value = $accesaray[$val];
echo "Wynik :".$value."</br>";
$wynikend= $wynikend.$value;
}
return $wynikend;
}

Tak wygląda funkcja
checkacces('itb',"b i t");

  • +
  • -
  • 0

#6 Gh0st

    :)

  • Power User

Reputacja: 852
Czempion

  • Postów:920
  • GG:
  • Imię:Tomek
  • Lokalizacja:Rabka-Zdrój
Offline

Napisano 25.01.2013 13:01

Proszę, Nie wiem czy o to ci chodziło

<?php
function checkacces($acces, $need)
{
// Sprawdzamy czy flagi zostaly podane
if( $acces == '' )
return false;
// sprawdzamy czy potrzebne flagi zostaly podane...
if( $need == '' )
return true;

// Ustawiamy true
$is = true;
// Jedziemy po string need
for($i = 0; $i < strlen($need); $i++){
// sprawdzamy czy taki znak z need wystepuje w acces
if( ! strpos($acces, $need[$i]) === 0 ) // Jesli nie to ustawiamy $is na false ( czyli juz nie ma jednej flagi i zwrocimy false )
$is = false;
}
return $is;
}
checkacces('abc', 'ab');



@speedkil.
Tak, bo jesli nie ma flag $need ( flag ktore maja byc ) to czemu mialo by zwroic false jesli logicznie wszystkie flagi sa w stringu acces? :D
speedkill (25.01.2013 20:15):
Na pewno przy drugim warunku ma być return true ?
speedkill (25.01.2013 20:23):
A nie lepiej było by dodać informację, że brakuje flag ;) ?

  • +
  • -
  • 0

#7 mimo114

    Pomocny

  • Autor tematu
  • Użytkownik

Reputacja: 4
Nowy

  • Postów:72
  • Imię:Mateusz
  • Lokalizacja:Lubliniec
Offline

Napisano 25.01.2013 14:50

Mam takie pytanko

$need[$i]
czy w taki sposób otrzymam tylko literę o tym numerku?
  • +
  • -
  • 0

#8 Gh0st

    :)

  • Power User

Reputacja: 852
Czempion

  • Postów:920
  • GG:
  • Imię:Tomek
  • Lokalizacja:Rabka-Zdrój
Offline

Napisano 25.01.2013 20:06

Tak
Np

$string = "abc";
echo $string[0]; // wyswietli "a"

  • +
  • -
  • 0

#9 mimo114

    Pomocny

  • Autor tematu
  • Użytkownik

Reputacja: 4
Nowy

  • Postów:72
  • Imię:Mateusz
  • Lokalizacja:Lubliniec
Offline

Napisano 26.01.2013 15:04

if( ! strpos($acces, $need[$i]) === 0 )
a że tak zapytam to co robi "!" przed `strpos` bo chyba go nie neguje?
  • +
  • -
  • 0

#10 Gh0st

    :)

  • Power User

Reputacja: 852
Czempion

  • Postów:920
  • GG:
  • Imię:Tomek
  • Lokalizacja:Rabka-Zdrój
Offline

Napisano 26.01.2013 15:38

samo
strpos($acces, $need[$i]) === 0

Sprawdza czy znak z argumentu drugiego istnieje w argumencie pierwszym,
jesli dodamy z przodu "!" if zostanie wywołana tylko wtedy kiedy on nie istnieje :)
  • +
  • -
  • 0

#11 mimo114

    Pomocny

  • Autor tematu
  • Użytkownik

Reputacja: 4
Nowy

  • Postów:72
  • Imię:Mateusz
  • Lokalizacja:Lubliniec
Offline

Napisano 28.01.2013 18:04

Twój skrypt nie działa.
echo checkacces('abcde', 'w')
Zwraca 1.
echo checkacces('abcde', 'c');
Zwraca 1.
  • +
  • -
  • 0

#12 Gh0st

    :)

  • Power User

Reputacja: 852
Czempion

  • Postów:920
  • GG:
  • Imię:Tomek
  • Lokalizacja:Rabka-Zdrój
Offline

Napisano 28.01.2013 18:43

zamień
if( ! strpos($acces, $need[$i]) === 0 )

na
if(stristr($acces, $need[$i]) === FALSE)


I bedzie dzialac :)
  • +
  • -
  • 0

#13 mimo114

    Pomocny

  • Autor tematu
  • Użytkownik

Reputacja: 4
Nowy

  • Postów:72
  • Imię:Mateusz
  • Lokalizacja:Lubliniec
Offline

Napisano 31.01.2013 12:49

ok thx
Do zamknięcia

Użytkownik mimo114 edytował ten post 31.01.2013 12:50

  • +
  • -
  • 0

#14 dasiek

    Nie wiem, nie znam się, nie orientuję się, zarobiony jestem.

  • Junior Admin

Reputacja: 2 077
Godlike

  • Postów:5 706
  • Imię:Adaś
  • Lokalizacja:No teraz trochę dalej od WWy
Offline

Napisano 31.01.2013 15:30

Wiadomość wygenerowana automatycznie


Ten temat został zamknięty przez moderatora.

Powód: Pomoc udzielona

Jeśli się z tym nie zgadzasz, Dołączona grafika raportuj ten post, a moderator lub administrator rozpatrzy go ponownie.


Z pozdrowieniami,
Zespół AMXX.PL
  • +
  • -
  • 0





Również z jednym lub większą ilością słów kluczowych: php

Użytkownicy przeglądający ten temat: 0

0 użytkowników, 0 gości, 0 anonimowych