我试图用图像序列显示用户填写用户配置文件的进度。
例如,如果用户填写了他们的名称,进度图像2将显示出来。如果用户填写了他们的名字和生物,进度图像3就会出现,等等……
我试着使用if和appear语句,但是只有进度图像2才会出现。
基本上,我只想根据用户在完成用户配置文件表单时所取得的进展来显示一个图像。
这是我的密码。
<?php
$name = ($data->first_name);
$bio = ($data->bio);
$address = ($data->street1);
$phone = ($data->phone);
$ec = ($data->e_contact);
$ecp = ($data->e_phone);
$bs = ($data->bs);
if($name == true){?>
<img src="../images/progress2.png" class="img-max-progress">
<?php }
elseif($name.$bio == true){?>
<img src="../images/progress3.png" class="img-max-progress">
<?php
}
elseif($name.$bio.$address == true){?>
<img src="../images/progress4.png" class="img-max-progress">
<?php
}
elseif($name.$bio.$address.$phone == true){?>
<img src="../images/progress5.png" class="img-max-progress">
<?php
}
elseif($name.$bio.$address.$phone.$ec == true){?>
<img src="../images/progress6.png" class="img-max-progress">
<?php
}
elseif($name.$bio.$address.$phone.$ec.$ecp == true){?>
<img src="../images/progress7.png" class="img-max-progress">
<?php
}
elseif($name.$bio.$address.$phone.$ec.$ecp.$bs == true){?>
<img src="../images/progress8.png" class="img-max-progress">
<?php
}
?>
<?php
if($name != true){?>
<img src="../images/progress1.png" class="img-max-progress">
<?php
}
?>
我已经填写了表单,所以进度8 but应该是显示的图像,但是prress2.png当前正在显示。
使用@user3132781和@vlzvl应答之间的组合,我让它像这样工作。
<?php
$name = ($data->first_name);
$bio = ($data->bio);
$address = ($data->street1);
$phone = ($data->phone);
$ec = ($data->e_contact);
$ecp = ($data->e_phone);
$bs = ($data->bs);
$completed = 0;
if (empty($name)) {
$completed += 1;
}
if (!empty($name)) {
$completed += 2;
}
if (!empty($bio)) {
$completed += 1;
}
if (!empty($address)) {
$completed += 1;
}
if (!empty($phone)) {
$completed += 1;
}
if (!empty($ec)) {
$completed += 1;
}
if (!empty($ecp)) {
$completed += 1;
}
if (!empty($bs)) {
$completed += 1;
}
echo '<img src="../images/progress' . $completed .'.png" class="img-max-progress">';
?>
发布于 2014-05-27 09:05:39
我还有另一种方法--就像一个建议:
$completed = 0;
if (isset($name)) {
$completed += 1;
}
if (isset($adress)) {
$completed += 1;
}
..... and so on for all the fields
//$completed can be used for defining the image
echo '<img src="../images/progress' . $completed .'.png" class="img-max-progress">';
发布于 2014-05-27 09:05:29
嗯..。我会尝试一些类似于:
if($name){
img 1
}
elseif ($name && $bio){
img 2
}
等。
最后一行是:
if(!$name){
img progress1
}
发布于 2014-05-27 09:05:38
试试这个(它也很干净):
<?php
$name = ($data->first_name);
$bio = ($data->bio);
$address = ($data->street1);
$phone = ($data->phone);
$ec = ($data->e_contact);
$ecp = ($data->e_phone);
$bs = ($data->bs);
if($name == true) {
echo '<img src="../images/progress2.png" class="img-max-progress">';
}
elseif($name== true && $bio == true) {
echo '<img src="../images/progress3.png" class="img-max-progress">';
}
elseif($name== true && $bio == true && $address == true) {
echo '<img src="../images/progress4.png" class="img-max-progress">';
}
elseif($name== true && $bio == true && $address == true && $phone == true) {
echo '<img src="../images/progress5.png" class="img-max-progress">';
}
elseif($name== true && $bio == true && $address == true && $phone == true && $ec == true) {
echo '<img src="../images/progress6.png" class="img-max-progress">';
}
elseif($name== true && $bio == true && $address == true && $phone == true && $ec == true && $ecp == true) {
echo '<img src="../images/progress7.png" class="img-max-progress">';
}
elseif($name== true && $bio == true && $address == true && $phone == true && $ec == true && $ecp == true && $bs == true) {
echo '<img src="../images/progress8.png" class="img-max-progress">';
}
if($name != true) {
echo '<img src="../images/progress1.png" class="img-max-progress">';
}
您可能希望将==改为@vlzvl所说的内容(检查变量是否为空)。
https://stackoverflow.com/questions/23894915
复制