0

各ループを 1 つずつ入力するのではなく、データベースからデータを取得することで、このスクリプトをより自動化しようとしています。

これは私が得たものです:

変数「$test」を毎回異なるものにしたいので、たとえば、次のような結果が得られます。

$test1 = "entry1;entry2;entry3;";
$test2 = "entry1;entry2;entry3;";

これは取得したスクリプトです。1 つの変数のテストでは問題なく動作しますが、さまざまな変数で多くの結果が必要です。

$query = "SELECT * FROM course";
$result = mysql_query($query);

while($row = mysql_fetch_array($result))
{
$course_menuname = $row['course_menuname']; #E.G breakfast_cereal, breakfast_toast, lunch_main
$course_item = $row['course_jsname']; #E.G cereal, toast, jacketpotato
 if(!empty($_POST[''.$course_menuname.''])) {
   foreach($_POST[''.$course_menuname.''] as $course_item) {
    $course_item = trim($course_item);
    if(!empty($course_item)) {
      $test .= "$course_item;";
    }
   }
 }
}

echo $test;

これは私が以前に何度も持っていたものですが、もっと自動化してほしいです。

 if(!empty($_POST['lunchmain_selection'])) {
   foreach($_POST['lunchmain_selection'] as $lunchmain) {
    $lunchmain = trim($lunchmain);
    if(!empty($lunchmain)) {
      $lunchmainchoices .= "$lunchmain;";
    }
   }
  }
 if(!empty($_POST['jacketpotato_selection'])) {
   foreach($_POST['jacketpotato_selection'] as $lunchjacketpotato) {
    $lunchjacketpotato = trim($lunchjacketpotato);
    if(!empty($lunchjacketpotato)) {
      $lunchjacketpotatochoices .= "$lunchjacketpotato;";
    }

} }

4

1 に答える 1

0

関数を使用できるように聞こえます: ここに例を示します

function thisLoopDoesSomething($loop_array) {
    // Don't bother doing anything if it's an empty array
    if (!empty($loop_array)) {
        return;
    }

    // Your loop code here, using the passed in variable
}

thisLoopDoesSomething($_POST['lunchmain_selection']);
thisLoopDoesSomething($_POST['jacketpotato_selection']);
...
于 2013-10-29T17:46:19.627 に答える