【问题标题】:How to use if conditon after explode the data from database从数据库中分解数据后如何使用if条件
【发布时间】:2015-04-03 15:38:26
【问题描述】:

在我的数据库中 Class I-V TuitionClass VI-VIII TuitionEngineering Subject 存储这样的值可能是三个或五个或八个例如。我列出了三个。爆破$row['commonsegment']后,怎么能放if条件?

$sqledit=mysql_query("select * from  tinfo where tsname='".$_SESSION['tutorname']."'");
$row=mysql_fetch_array($sqledit);
$segment = '';
$cats = explode(",", $row['commonsegment']);
foreach($cats as $cat) {
    $segment .= "<category>" . $cat . "</category>\n";
}
echo $segment;

我的数据库结构:

  1. 普通话。
  2. I-V 类学费,VI-VIII 类学费,工程学科
  3. 舞蹈、I-V 类学费、VI-VIII 类学费、工程科目

我想要这样:

<?php if($segment=='Class I-V Tuition'){echo "checked";}?>
<?php if($segment=='Class VI-VIII Tuition'){echo "checked";}?>
<?php if($segment=='Engineering Subject'){echo "checked";}?>

【问题讨论】:

  • 你能用一些数据发布你的数据库结构吗..
  • 谢谢你可以看到我的问题。我更新了我的数据库结构
  • 在做任何其他事情之前,请阅读准备好的语句。您当前的 SQL 语句非常容易受到攻击,并且必然会导致您的数据库被利用。
  • 好的,我会这样做,我会采取必要的步骤。你能给我一个答案吗?我想你明白了我的想法。

标签: php


【解决方案1】:

您可以像其他任何地方一样设置if 条件。

$cats = explode(",", $row['commonsegment']);

foreach($cats as $cat) {
   if ($cat == "Class I-V Tuition"){
      // do stuff for the "Class I-V Tuition" category

   } else if ($cat == "Engineering Subject"){
      // do stuff for the "Engineering Subject" category

   } else {
      // do stuff for anything else

   }
}

编辑

似乎您根本不​​需要 foreach 循环 - 您只是在检查数据库结果中是否有值。

$cats = explode(",", $row['commonsegment']);

<input type="checkbox" name="segment[]" value="Class I-V Tuition" <?php if(in_array('Class I-V Tuition', $cats)) { echo "checked"; }?>> Class I-V Tuition 

您可能希望在", " 上使用explode,因为您的数据库似乎用逗号+空格分隔,而不仅仅是逗号。

【讨论】:

  • 谢谢我有这样的代码 >Class I-V Tuition >Class VI-VIII Tuition

    如果我把这个东西放在foreach里,它会执行两次任何想法,我的表格在foreach之外,我不应该将表单带入 foreach
  • 我不应该将表单带入 foreach。我必须将 $cat 传递给我的表单。希望你能理解
  • 您应该将其发布在您的实际问题中,以便更清楚您要做什么。在 cmets 中解析代码很痛苦。我已经更新了我的答案,希望能解决您的问题。
  • 太棒了。非常感谢,我需要你的另一个帮助。昨天我问了这个问题。我没有得到解决方案,我觉得你可以做到这一点,如果可以的话,只要看看这个线程 stackoverflow.com/questions/29416581/…。这对我来说是很大的帮助,非常感谢堆栈。
猜你喜欢
  • 2018-12-18
  • 2015-12-06
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2019-12-30
相关资源
最近更新 更多