複数サブミットで処理分ける。

一つのフォームに複数のサブミットを書いてname属性付けてvalueで処理を切り替えるTIPS

<form>
  <input type="text" name="search" value="<?php echo isset($_REQUEST['search']) ? $_REQUEST['search'] : '' ?>" />
  <input type="submit" name="submit" value="search"/>
  <input type="submit" name="submit" value="m3u"/>

こうなっていてPHP側は

dispatch();

function dispatch(){
    if(isset($_REQUEST["submit"])){
        $kind = $_REQUEST["submit"];
        if($kind == "m3u"){
            sendM3u();
        }
        if($kind == "search"){
            find();
        }
    }else{
        normal();
    }
}

こうなる。なかなか使い勝手が良い。