ugrás a tartalomhoz

Feltételes Submit

arcadas · 2008. Jan. 25. (P), 02.41
Üdv!

Megpróbálom érthetően leírni mi a problémám, annak ellenére, hogy kezdő vagyok.

Tehát van egy oldalam, ahol van egy login felület, ez rendben működik. Van egy aloldal, ahol a regisztrált felhasználók láthatják, a regisztrált felhasználók listáját. Az szeretném elérni, hogy bizonyos felhasználók (pl akinek a mysql adatbázisban a prioritás oszlopnál 0 szerepel), megjelenjen két gomb (submit), azoknál a felhasználóknál, akiknek a prioritása 2-es. Az egyik gomb, amivel törölheti ezeket a felhasználókat. Viszont mivel több 0-ás felhasználóm van (kb 2-20), ezért csak akkor törlödjön véglegesen, ha minden 0-ás felhasználó kiválasztja ezt a törlés gombot. A másik gombbal pedig azt szereném, ha csökkenne a prioritás egyesre, ekkor pedig már nem jelennének meg gombok a felhasználó mellett, ehhez elég, ha egy 0-ás felhasználó választja ezt a lehetőséget, nem kell mindenkinek "beleegyeznie".

A legnagyobb gondom, hogy egyszerre ugye két feltételnek kell teljesülnie, hogy 0-ás-e és ha igen akkor legyenek gombok, de csak a 2-esek mellett.

A válaszokat előre is köszönöm, ha valami nem tiszta írjatok!
 
1

Ha űrlap feltétel szerint..

s_volenszki · 2008. Jan. 25. (P), 10.13
...akkor az adatbázisból kiolvasott érték alapján lehetőséged van akár több előre elkészített űrlap közül a kitételnek megfelelőt kiválasztani.

//$prior = 0
$form_0 = "<form name=\"valami\" action=\"akarmi\" method=\"post\">
...
</form>";
//$prior = 1
$form_1 = "<form name=\"valami\" action=\"akarmi\" method=\"post\">
...
</form>";
//$prior = 2
$form_2 = "<form name=\"valami\" action=\"akarmi\" method=\"post\">
...
</form>";

//Aztán azt jeleníted meg, amelyik kell
switch ($prior) {
case 0:
    echo $form_0;
    break;
case 1:
    echo $form_1;
    break;
case 2:
    echo $form_2;
    break;
}
Bizonyos esetben elég lehet, ha csak az űrlapnak a gombokat befoglaló részéből készítesz különböző variációkat, és azt foglalod az egy darab űrlapodba:

//$prior = 0
$btn_0 = "<input type=\"submit\" value=\"Elküld\" />";
//$prior = 1
$btn_1 = "<input type=\"submit\" value=\"Elküld\" /><input type=\"button\" value=\"Töröl\" />";
//$prior = 2
$btn_1 = "<input type=\"submit\" value=\"Elküld\" /><input type=\"button\" value=\"Töröl\" /><input type=\"button\" value=\"Akármi\" />";

//Aztán azt foglalod be, amelyik kell
switch ($prior) {
case 0:
    $controll = $btn_0;
    break;
case 1:
    $controll = $btn_1;
    break;
case 2:
    $controll = $btn_2;
    break;
}

print "<form ...>...".$controll."</form>";
2

törölni

DsA · 2008. Jan. 25. (P), 11.18
törölni pedig a DELETE FROM mysql syntax-al tudsz
3

action

arcadas · 2008. Jan. 25. (P), 14.09
üdv, van még egy gondom, nem tudom hogyan lehetne csökkenteni a prioritást (ttip).

	$ossz=mysql_connect($dbhost,$dbuser,$dbpass);
	mysql_select_db($dbname,$ossz);
		
	    $sql = "SELECT * FROM memlist ";
	    $sql.= "WHERE (fnev='".$_SESSION['fnev']."'";
	    $sql.= " AND ttip='0')";
		
		$query = mysql_query($sql);

	 	if (mysql_num_rows($query) !== 0)
	    { //Helyes fnev+ttip
		$sql="SELECT * FROM memlist";
		$ered=mysql_query($sql,$ossz) or die(mysql_error());
		while ($ujTomb=mysql_fetch_array($ered)){
		 	$bnev=$ujTomb['bnev'];
		 	$email=$ujTomb['email'];
		 	$ttip=$ujTomb['ttip'];
		 	echo "<br><br>Név: $bnev; E-mail: $email; Ttip: $ttip;";
		 	if($ttip=='2'){
		 	 	//Gomb helye
		 	 	print "<form action=\"$ttip=$ttip-1\" method=\"post\">
				  <table>
				    <tr>
			      <td colspan=\"2\" align=\"left\"><input type=\"submit\" name=\"elfogad\" value=\"Elfogad\" /></td>
				   	</tr>
				</table>
				</form>";

			}
		}
}
Az action-höz mit kell írni?
4

form action...

Ronyn · 2008. Jan. 25. (P), 16.37
=$_SERVER[PHP_SELF]?settype=($ttype-1)"...
Aztán if(isset($settype)){
UPDATE tabla SET ttype=settype WHERE user=user....}