Mateusz Pięta

Mateusz Pięta matinet.pl |
wyrusze.pl |
polskimechanik.pl

Temat: Kawałek kodu jako zmienna lub inne rozwiązanie

Witam najserdeczniej jak tylko można.

Potrzebuję pomocy z zakresu przypisania kodu PHP do pewnej zmiennej, o ile coś takiego jest możliwe.

Piszę skrypt, który przeszukuje słowa wprowadzone w textarea'ę i jeżeli jest w bazie, to wyświetla do niego synonimy jako <option>, czyli z listą do wyboru.

Korzystam z
$tekst = str_replace($slowo, $zamiennik, $tekst);

chciałbym, żeby $słowo była zamieniana na:

echo' <select name="nazwa"> <option>'.$synonim[$licznik3].'</option>';
$licze = 0;
while ($licze < (count($synonim) - 1)) { if ($synonim[$licze] !== $synonim[$licznik3]) {
echo '<option>'.$synonim[$licze].'</option>';
}
$licze = $licze + 1;
}

echo '</select>';

Jasno się wyraziłem? Rozumiecie co zamierzam osiągnąć?
Macie jakieś pomysły?Mateusz Pięta edytował(a) ten post dnia 11.11.10 o godzinie 19:24

konto usunięte

Temat: Kawałek kodu jako zmienna lub inne rozwiązanie

rozumiem co chcesz zrobic - ale w ogole nie mam pojecia po co Ci takie cos w postaci, ktora wlasnie pokazales :)

W textboxie, na kazda wprowadzona literke robisz ajax calla do swojego pliku php. ten plik php dostaje informacje jakie literki juz zostaly podane, robi szybkie sprawdzenie bazy danych, daje odpowiedz w postaci JSONa.
Javascript lapie odpowiedz po AJAXie i generuje szybko dodatkowe opcje do wyboru w postaci DIVa, czy LI, cokolwiek tam bedzie pasowac do dizajnu.

Stad tez przyklad ktory podales, nie ma dla mnie sensu i nawet nie wiem jak ci pomoc ;)
Mateusz Pięta

Mateusz Pięta matinet.pl |
wyrusze.pl |
polskimechanik.pl

Temat: Kawałek kodu jako zmienna lub inne rozwiązanie

to co mówisz dobre jest, gdy chcemy wyszukać tylko jeden synonim.
Mój skrypt zakłada, że zamieniane będą całe ciągi, teksty po kilka tys znaków, więc wybieranie z <option> było by dobre.
Mariusz Lewandowski

Mariusz Lewandowski Senior Java
Developer

Temat: Kawałek kodu jako zmienna lub inne rozwiązanie

Tak szczerze mówiac nie widze celu biznesowego w tym co chcesz osiagnac (byc moze dlatego, ze przedstawiles tylko czesc koncepcji jako calosci) ale pomysl o cacheowaniu zapytan do bazy.
Jesli chcesz ja atakowac asynchronicznymi zapytaniami to mozesz ja ladwo zabic.

konto usunięte

Temat: Kawałek kodu jako zmienna lub inne rozwiązanie

nie :) mowie o nawet milionach slow - twoja sprawa ile, ale pewnie bym ograniczyl do 10 ;)

robisz
-ul
--li
--li
--li

mowiac krotko... po kazdej literce (albo moze z sekundowym opioznieniem) robisz AJAX calla, dostajesz odpoweidz od swojego pliku php i masz 10 najpopularniejszych slow (do 10).
i kazde ze slow zawijasz w li i dodajesz do UL ktore wlasnie dodales przez JS.

Takie UL ladnie stylujesz, CSS, javascript "onclick" zeby uzytkownik mogl wybrac, podswitalnie, hovery i cokolwiek tam chcesz. a caly box pokazuje sie zaraz pod polem tekstowym w ktorym uzytkownik cos wpisywal.

alterantywnie - mozesz zrobic dokladnie to samo i dodac do boxa jako <option>. Nic nie stoi na przeszkodzie tak naprawde. To jak to bedziesz wyswietlac to juz raczej drugorzedna sprawa, maly detal rzeklbym... :)

ps. Tak jak Mariusze zasugerowal - bedziesz musial pomyslec o optymalizacji zapytan do bazy danych bo ja po prostu zamordujesz :)Andrzej Winnicki edytował(a) ten post dnia 11.11.10 o godzinie 20:26
Mateusz Pięta

Mateusz Pięta matinet.pl |
wyrusze.pl |
polskimechanik.pl

Temat: Kawałek kodu jako zmienna lub inne rozwiązanie

Chcę zrobić coś takiego http://www.synomix.pl/generator.html?param=czysc z tym że tam opcja zamiany jest na dole, ja chciałbym żeby była ona w tekście - od razu widzimy jaki mamy ciąg.

Wg mnie ma to sens i może być wykorzystywane jako precle - płacimy za jeden, mamy kilka.

Ale to nie jest dział start-up, tylko PHP.

Zależy mi, żeby zmienną $zamiennik w

$tekst = str_replace($slowo, $zamiennik, $tekst);

zdefiniować jako kod php.

konto usunięte

Temat: Kawałek kodu jako zmienna lub inne rozwiązanie

nadal dla mnie to co probujesz zrobic jest po prostu bez sensu i jest to zle podejscie, ALE, nie bede wnikac :)

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

$licze=0; // chyba to ptorzebujesz na globalnym poziomie... chyba

function convertToHTML(data) {
global $licze;
global $synonim;

$finalHTML=<select name="nazwa"> <option>'.$synonim[$licznik3].'</option>';
$licze = 0;
while ($licze < (count($synonim) - 1)) { if ($synonim[$licze] !== $synonim[$licznik3]) {
$finalHTML.='<option>'.$synonim[$licze].'</option>';
}
$licze++; // tak sie dodaje :)
}

$finalHTML.='</select>'; // zapomniales SELECT zamknac :)

return $finalHTML;
}

$tekst = str_replace($slowo, convertToHTML($twoje_slowo), $tekst);

----------

eee chyba cos takiego.. ale im dluzej patrze na to co probujesz zrobic i czemu tak, tym bardziej tego nie rozumiem ;)Andrzej Winnicki edytował(a) ten post dnia 11.11.10 o godzinie 20:59
Mateusz Pięta

Mateusz Pięta matinet.pl |
wyrusze.pl |
polskimechanik.pl

Temat: Kawałek kodu jako zmienna lub inne rozwiązanie

Bardziej robię to dla własnych celów naukowych...

A propos tego $licze = $licze + 1; to taki nawyk przeniosłem z Pascala do PHP :)

Pewne znaczniki być może pominąłem - dałem tylko kawałek skryptu.

Cóż... Spróbuje jakoś wdrożyć to co napisałeś Andrzeju :)

------

Edit:

Krótko wytłumaczę co chcę zrobić:
Użytkownik wprowadza tekst do formularza. Tekst jest dzielony na słowa i skrypt "przemiela" go na synonimy z mojej bazy. Drukuje wtedy 5 wersji (z czego 4 są logicznie oskryptowane (bez powtórzeń), jedna losowa). Użytkownik wybiera sobie wersje które najbardziej mu odpowiadają i przystępuję do edycji szczegółowej każdego slowa z osobna (to o co pytałem).Mateusz Pięta edytował(a) ten post dnia 11.11.10 o godzinie 22:02
Jakub L.

Jakub L. Programista

Temat: Kawałek kodu jako zmienna lub inne rozwiązanie

Mi wygląda że AJAX jest odpowiedzą - pchasz tekst, dostajesz wersje, przebudowujesz stronę, później dla tego wybranego słowa to samo, i tak będziesz musiał to obrobić w JavaScripcie żeby to było responsywne.

konto usunięte

Temat: Kawałek kodu jako zmienna lub inne rozwiązanie

posluchaj Andrzeja

od siebie dodam, ze w wiekszosci bedziesz integrowal jakis scriptaculous czy jquery itp itdTomasz Grzechowski edytował(a) ten post dnia 11.11.10 o godzinie 22:44
Michał Jarosz

Michał Jarosz Frontend Developer &
Team Leader

Temat: Kawałek kodu jako zmienna lub inne rozwiązanie

Mateusz Pięta:
Chcę zrobić coś takiego http://www.synomix.pl/generator.html?param=czysc z tym że tam opcja zamiany jest na dole, ja chciałbym żeby była ona w tekście - od razu widzimy jaki mamy ciąg.

W tekście? Przecież w textarea nie może być selectaa. Będziesz potrzebował jakiegoś widżetu ala WYSYWIG, a to znowy kieruje nas w stronę AJAXa



Wyślij zaproszenie do