2010-09-08 93 views
0

有人可以帮助我这个if语句吗? 我的表单每次出现我加载页面,但在我提交表单后消失! 也许这是是“endif”语法混淆了我,但我不能让这个得当... 这里是代码:帮助一个PHP语句

<?php 
if ($this->input->post('submit') && $this->input->post('categories')): 
    foreach($tagedImages as $image): 
    ?> 
    <div class="thumb"> 
     <?php echo'<a href="/toKoritsi/uploads/'.$image.'"/> <img src="/toKoritsi/uploads/thumbs/'.$image.'"/></a>' ?> 
    </div> 
    <?php 
    endforeach; 
elseif(isset($photosQuery) && count($photosQuery)): 
    foreach($photosQuery->result_array() as $photo): 
    ?> 
    <div class="thumb"> 
     <?php echo'<a href="/toKoritsi/uploads/'.$photo['name'].'"/> <img src="/toKoritsi/uploads/thumbs/'.$photo['name'].'"/></a>' ?> 
    </div> 
    <?php 
    endforeach; 
endif; 

$options = array(
    'bracelet' => 'Bracelets', 
    'ring'  => 'Rings', 
    'bag'  => 'Bags', 
    'earing' => 'Earings' 
); 

echo form_open("toKoritsi/gallery"); 
echo form_dropdown('categories', $options, 'bracelet'); 
echo form_submit('submit', 'Choose'); 
echo form_close(); 
?> 

在此先感谢!

+3

AAAGH !!我的眼睛! – AlexanderMP 2010-09-08 15:35:04

+1

为什么使用foreach和if语句的替代语法?请使用大括号。 – zaf 2010-09-08 15:41:44

+0

我试图格式化它,但放弃了。这不可能。 – 2010-09-08 15:44:58

回答

0

应该foreach($tagedImages as $image)foreach($taggedImages as $image)

您的代码格式非常难看。如果您打算获得格式良好的HTML输出,也许您应该考虑使用Tidy或提供该功能的模板引擎。

+0

感谢您的提示...但问题是不显示的形式,所有的foreach循环工作正常 – rabidmachine9 2010-09-08 15:43:39

0

你一定要正确地格式化你的代码。

我也建议您尝试将PHP整合到块中,并将其与HTML分开。

你可以做所有的条件和回声内的一些那些HTML元素:

<div> 
<?php /*...*/ ?> 
</div> 

,而不是你现在在做什么:

<?php /*...*/ ?> 
<div> 
<?php /*...*/ ?> 
</div> 
<?php /*...*/ ?> 

此外,这样的事情块没有意义:

<?php endforeach;?> 
      <?php endif;?> 

即使你不得不把你的代码分成小块,不是吗?更容易说:

<?php 
    endforeach; 
    endif; 
?> 

编辑:问题源被重新格式化和清理之前提供了这个答案。我甚至无法解决原始问题,直到我能更好地看到发生了什么事情。

这可能听起来有点笨,但您确定您的gallery控制器的行为是否正确?如果您正在提交并且您的CodeIgniter函数中有错误,则可能会在提交后混淆渲染。

+0

感谢您的提示! – rabidmachine9 2010-09-08 15:54:16

+1

虽然你是正确的,它真的doesn't回答这个问题的。 – jeroen 2010-09-08 15:57:26

+1

这是公平的,但我想,当我回答了这个代码是,即使试图破译源这样一个烂摊子是一个问题。现在,至少我们能看到的笨典故和括号... – Trafalmadorian 2010-09-08 16:19:29

0

我不知道您的网站的网址结构是什么样子,但您确定要将表单提交给正确的地方吗?

根据CI user guide,它被提交到类似/index.php/toKoritsi/gallery的东西,但这取决于您的配置首选项。

+0

是因为它做什么是应该做的表单提交到正确的地方...但它后,我提交它不会显示出来! – rabidmachine9 2010-09-08 15:57:17

+0

你有错误信息传送呢?在表单显示之前,脚本可能会停在某处。我会检查服务器日志并打开所有错误消息。 – jeroen 2010-09-08 16:02:02

+0

这可能是一个很好的猜测...我从未想过禁用任何错误消息... – rabidmachine9 2010-09-08 16:05:15