Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [JavaScript][PHP]blokowanie submit
Forum PHP.pl > Forum > Przedszkole
majsterpstryk
  1.  
  2.  
  3. $id=mysql_query("SELECT * FROM uzytkownik where login='".$_GET['wybor']."'") or die(mysql_error());
  4. $user=mysql_fetch_array($id);
  5. echo"<form method='POST' action='/panela/index.php?link=uzytko' name='formularz'>";
  6. echo'<input type="radio" name="status[]" value="1" id="op1"'; if($user['status']=='user') { echo 'checked="checked"'; }echo'/>User<br>';
  7. echo'<input type="radio" name="status[]" value="2" id="op2"'; if($user['status']=='moderator') { echo 'checked="checked"';}echo'/>Moderator<br>';
  8. echo'<input type="radio" name="status[]" value="3" id="op3"'; if($user['status']=='admin') { echo 'checked="checked"';}echo'/>Administrator<br>';
  9. echo'<input type="submit" value="zmien" id="submit">';
  10. echo'</form>';

Mam formularz , ktory wyswietla mi 3 opcje , sprawdza w bazie jesli uzytkownik jest userem domyslnie zaznaczona jest ta opcja , chce do tego dorobic blokade przycisku zmien , tzw ze jesli uzytkownik jest userem i jesli jest zaznaczona ta opcja to przycisk zmien jest nieaktywny , dopiero staje sie aktywny jak wybiore inna opcje, wiem ze bylo sporo tego ale nic konkretnego nie znalazlem
tehaha
możesz spróbować tak:

  1. $id=mysql_query("SELECT * FROM uzytkownik where login='".$_GET['wybor']."'") or die(mysql_error());
  2. $user=mysql_fetch_array($id);
  3. echo"<form method='POST' action='/panela/index.php?link=uzytko' name='formularz'>";
  4. echo'<input type="radio" name="status[]" value="1" id="op1"'; if($user['status']=='user') { echo 'checked="checked"'; }echo'/>User<br>';
  5. echo'<input type="radio" name="status[]" value="2" id="op2"'; if($user['status']=='moderator') { echo 'checked="checked"';}echo'/>Moderator<br>';
  6. echo'<input type="radio" name="status[]" value="3" id="op3"'; if($user['status']=='admin') { echo 'checked="checked"';}echo'/>Administrator<br>';
  7. echo'<input type="submit" value="zmien" id="submit" disabled="disabled">';
  8. echo'</form>';

tehaha
myślałem, że ma być na stałe zablokowany ale teraz to widzę, że chcesz żeby był zablokowany kiedy w radio wybrany jest user tak?
majsterpstryk
eh jeszcze inaczej biggrin.gif , chodzi o to ze powyzszy kod pobiera uzytkownikow z bazy , po wyborze uzytkownika wyswietlaja sie trzy opcje Admin , moder , user , jesli jest userem domyslnie jest zaznaczona opcja user i wtedy powinien byc przycisk zmien nieaktywny. a aktywny po wyborze np mod , czy teraz rozumiesz smile.gif ?
tehaha
chyba rozumiem, czyli jeśli użytkownik jest już jako admin, to nie można zmienić na admin, itp

a więc tak:
domyślnie ustawiasz przycisk na nieaktywny, ponieważ zaznaczony będzie ten stopień, który jest obecnie, następnie funkcją javascript przy zmianie sprawdzasz który z nich został zaznaczony, jeżeli ten sam co był na początku to przycisk jest nieaktywny:
  1. if($user['status']=='user')
  2. {
  3. $current_id = 'op1';
  4. } elseif($user['status']=='moderator')
  5. {
  6. $current_id = 'op2';
  7. } elseif($user['status']=='admin')
  8. {
  9. $current_id = 'op3';
  10. }
  11. echo"<form method='POST' action='/panela/index.php?link=uzytko' name='formularz'>";
  12. echo'<input type="radio" name="status[]" value="1" id="op1" onclick="java script: check();"'; if($user['status']=='user') { echo 'checked="checked"'; }echo'/>User<br>';
  13.  
  14. echo'<input type="radio" name="status[]" value="2" id="op2" onclick="java script: check();"'; if($user['status']=='moderator') { echo 'checked="checked"';}echo'/>Moderator<br>';
  15.  
  16. echo'<input type="radio" name="status[]" value="3" id="op3" onclick="java script: check();"'; if($user['status']=='admin') { echo 'checked="checked"';}echo'/>Administrator<br>';
  17.  
  18. echo'<input type="submit" value="zmien" id="submit" disabled="disabled">';
  19.  
  20. echo'</form>';
  21. echo "<script type=\"text/javascript\">
  22. function check()
  23. {
  24. var radio = document.getElementById(\"$current_id\");
  25. var button_submit = document.getElementById(\"submit\");
  26. if(radio.checked == true)
  27. {
  28. button_submit.disabled = true;
  29. }else
  30. {
  31. button_submit.disabled = false;
  32. }
  33. }
  34. </script>";
tehaha
a wkleiłeś to tak samo jak Ci dałem? bo zamiast $current_id powinno w skrypcie się pojawić op1, op2 lub op3, u mnie działa więc u Ciebie też musi, wklej cały kod do posta, może dałeś echo w apostrofach zamiast cudzysłowach
majsterpstryk
no wkleilem zywcem i nie dziala :/ , przeksztalcilem troche zeby funkcja byla z parametrem i tez nei dziala
  1. if($user['status']=='user')
  2. {
  3. $current_id = 'op1';
  4. } elseif($user['status']=='moderator')
  5. {
  6. $current_id = 'op2';
  7. } elseif($user['status']=='admin')
  8. {
  9. $current_id = 'op3';
  10. }
  11. echo"<form method='POST' action='/panela/index.php?link=uzytko' name='formularz'>";
  12. echo'<input type="radio" name="status[]" value="1" id="op1" onclick="java script: check($current_id);"'; if($user['status']=='user') { echo 'checked="checked"'; }echo'/>User<br>';
  13.  
  14. echo'<input type="radio" name="status[]" value="2" id="op2" onclick="java script: check($current_id);"'; if($user['status']=='moderator') { echo 'checked="checked"';}echo'/>Moderator<br>';
  15.  
  16. echo'<input type="radio" name="status[]" value="3" id="op3" onclick="java script: check($current_id);"'; if($user['status']=='admin') { echo 'checked="checked"';}echo'/>Administrator<br>';
  17.  
  18. echo'<input type="submit" value="zmien" id="submit" disabled="disabled">';
  19.  
  20. echo'</form>';
  21. echo "<script type=\"text/javascript\">
  22. function check(cos)
  23. {
  24. var radio = document.getElementById(\"cos\");
  25. var button_submit = document.getElementById(\"submit\");
  26. if(radio.checked == true)
  27. {
  28. button_submit.disabled = true;
  29. }else
  30. {
  31. button_submit.disabled = false;
  32. }
  33. }
  34. </script>";
tehaha
już chyba rozumiem czemu skopiowane nie działa, tu masz działające, tylko usuń spacje między java script w inputach w onclick, bbcode ją dodaje i takie skopiowane stąd też mi nie działa:
  1. if($user['status']=='user')
  2. {
  3. $current_id = 'op1';
  4. } elseif($user['status']=='moderator')
  5. {
  6. $current_id = 'op2';
  7. } elseif($user['status']=='admin')
  8. {
  9. $current_id = 'op3';
  10. }
  11. echo"<form method='POST' action='/panela/index.php?link=uzytko' name='formularz'>";
  12. echo'<input type="radio" name="status[]" value="1" id="op1" onclick="java script: check();"'; if($user['status']=='user') { echo 'checked="checked"'; }echo'/>User<br>';
  13.  
  14. echo'<input type="radio" name="status[]" value="2" id="op2" onclick="java script: check();"'; if($user['status']=='moderator') { echo 'checked="checked"';}echo'/>Moderator<br>';
  15.  
  16. echo'<input type="radio" name="status[]" value="3" id="op3" onclick="java script: check();"'; if($user['status']=='admin') { echo 'checked="checked"';}echo'/>Administrator<br>';
  17.  
  18. echo'<input type="submit" value="zmien" id="submit" disabled="disabled">';
  19.  
  20. echo'</form>';
  21. echo "<script type=\"text/javascript\">
  22. function check()
  23. {
  24. var radio = document.getElementById(\"$current_id\");
  25. var button_submit = document.getElementById(\"submit\");
  26. if(radio.checked == true)
  27. {
  28. button_submit.disabled = true;
  29. }else
  30. {
  31. button_submit.disabled = false;
  32. }
  33. }
  34. </script>";
majsterpstryk
kurcze moj blad , wszystko pieknie dziala dzieki , poprostu wklejajac kod zgubilem zapytanie do bazy smile.gif
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.