Cytat(akurczyk @ 4.08.2008, 12:47:34 )

zaraz sprawdzę ale nie mogę zmienić kategoria[] na kategoria[0] albo 1 bo nad skryptem jest funkcja js ktura sumije wszystkie kategoia[] do kategorie. a ja chcę sprawdzić czy w kategoria znajduj się między innymi dany ciąg znaków.
Nie rozumiesz...
Jak to ma działać jak:
1. masz dwa różne elementy name="kategoria" jeden to input hidden, drugi to checkboxy których wynik tu i tak otrzymujesz w postaci tablicy.
2. we wzorze eregi nawiasy kwadratowe muszą być poprzedzone znakiem \
3. jeszcze zupełnie nie wiadomo po co tu js. mieszasz
Jeżeli już tak chcesz, to zobacz:
<?php
if($_GET['submit']){
$kategoria=$_GET['kategoria'];
foreach($kategoria as $k=>$v) $pytanie.=$v;
echo 'Wybrano: '.$pytanie.'<hr>'; }
echo '<form action="" method="get">'; if(eregi('[PHP]', $pytanie)) { echo '<input type="checkbox" name="kategoria[]" value="[PHP]" checked="checked"> [PHP]<br>'; } else {
echo '<input type="checkbox" name="kategoria[]" value="[PHP]"> [PHP]<br>'; }
if(eregi('[Perl]', $pytanie)) { echo '<input type="checkbox" name="kategoria[]" value="[Perl]" checked="checked"> [Perl]<br>'; } else {
echo '<input type="checkbox" name="kategoria[]" value="[Perl]"> [Perl]<br>'; }
if(eregi('[MySQL]', $pytanie)) { echo '<input type="checkbox" name="kategoria[]" value="[MySQL]" checked="checked"> [MySQL]<br>'; } else {
echo '<input type="checkbox" name="kategoria[]" value="[MySQL]"> [MySQL]<br>'; }
if(eregi('[PostgreSQL]', $pytanie)) { echo '<input type="checkbox" name="kategoria[]" value="[PostgreSQL]" checked="checked"> [PostgreSQL]<br>'; } else {
echo '<input type="checkbox" name="kategoria[]" value="[PostgreSQL]"> [PostgreSQL]<br>'; }
if(eregi('[SQLite]', $pytanie)) { echo '<input type="checkbox" name="kategoria[]" value="[SQLite]" checked="checked"> [SQLite]<br>'; } else {
echo '<input type="checkbox" name="kategoria[]" value="[SQLite]"> [SQLite]<br>'; }
if(eregi('[JavaScript]', $pytanie)) { echo '<input type="checkbox" name="kategoria[]" value="[JavaScript]" checked="checked"> [JavaScript]<br>'; } else {
echo '<input type="checkbox" name="kategoria[]" value="[JavaScript]"> [JavaScript]<br>'; }
if(eregi('[XHTML/CSS]', $pytanie)) { echo '<input type="checkbox" name="kategoria[]" value="[XHTML/CSS]" checked="checked"> [XHTML/CSS]<br>'; } else {
echo '<input type="checkbox" name="kategoria[]" value="[XHTML/CSS]"> [XHTML/CSS]<br>'; }
echo '<input type="submit" name="submit" value="Szukaj"> </form>';
?>
chociaż bardziej bym zalecał:
<?php
if($_GET['submit']){
$kategoria=$_GET['kategoria'];
foreach($kategoria as $k=>$v) $pytanie.="[$k]";
echo 'Wybrano: '.$pytanie.'<hr>'; }
echo '<form action="" method="get">'; if(eregi('[PHP]', $pytanie)) { echo '<input type="checkbox" name="kategoria[PHP]" checked="checked"> [PHP]<br>'; } else {
echo '<input type="checkbox" name="kategoria[PHP]"> [PHP]<br>'; }
if(eregi('[Perl]', $pytanie)) { echo '<input type="checkbox" name="kategoria[Perl]" checked="checked"> [Perl]<br>'; } else {
echo '<input type="checkbox" name="kategoria[Perl]"> [Perl]<br>'; }
if(eregi('[MySQL]', $pytanie)) { echo '<input type="checkbox" name="kategoria[MySQL]" checked="checked"> [MySQL]<br>'; } else {
echo '<input type="checkbox" name="kategoria[MySQL]"> [MySQL]<br>'; }
if(eregi('[PostgreSQL]', $pytanie)) { echo '<input type="checkbox" name="kategoria[PostgreSQL]" checked="checked"> [PostgreSQL]<br>'; } else {
echo '<input type="checkbox" name="kategoria[PostgreSQL]"> [PostgreSQL]<br>'; }
if(eregi('[SQLite]', $pytanie)) { echo '<input type="checkbox" name="kategoria[SQLite]" checked="checked"> [SQLite]<br>'; } else {
echo '<input type="checkbox" name="kategoria[SQLite]"> [SQLite]<br>'; }
if(eregi('[JavaScript]', $pytanie)) { echo '<input type="checkbox" name="kategoria[JavaScript]" checked="checked"> [JavaScript]<br>'; } else {
echo '<input type="checkbox" name="kategoria[JavaScript]"> [JavaScript]<br>'; }
if(eregi('[XHTML/CSS]', $pytanie)) { echo '<input type="checkbox" name="kategoria[XHTML/CSS]" checked="checked"> [XHTML/CSS]<br>'; } else {
echo '<input type="checkbox" name="kategoria[XHTML/CSS]"> [XHTML/CSS]<br>'; }
echo '<input type="submit" name="submit" value="Szukaj"> </form>';
?>
a nawet tak:
<?php
$tab=array('PHP','Perl','MySQL','PostgreSQL','SQLite','JavaScript','XHTML/CSS');
if($_GET['submit']){
$kategoria=$_GET['kategoria'];
foreach($kategoria as $k=>$v) { $pytanie.="[$k]"; }
echo 'Wybrano: '.$pytanie.'<hr>'; //tą linie można usunąć }
echo '<form action="" method="get">'; foreach($tab as $k=>$v) {
if(eregi("[$v]", $pytanie)) { echo '<input type="checkbox" name="kategoria['.$v.']" checked="checked"> ['.$v.']<br>'; } else { echo '<input type="checkbox" name="kategoria['.$v.']"> ['.$v.']<br>'; } }
echo '<input type="submit" name="submit" value="Szukaj"></form>'; ?>
No i jeszcze jedno, dlaczego by tego nie wysłać POSTem?