私が犯した単純な間違いだと思いますが、条件を満たしたときに最後のelse if {}ステートメントが実行されない理由を今まで解決できませんでした。
それは私のフォームです。ユーザーが値を入力するためのオプションとして、3 つのフォーム要素があります。テキスト、写真、動画のいずれかを選択してアップロードできます。これが私のPHPです:
if ( $this->input->post('text') !== '') {
//this executes fine when it meets the condition
} else if ( $this->input->post('photo') !== '' ) {
// this also works fine
} else if ( $this->input->post('video') !== '' ) {
/* however, I can't get to this condition when
the user chooses to upload the movie.
It always go the second condition.
*/
}
編集:
これが私の見解です:
<form action="<?php echo base_url()?>action/post" method="post" enctype="multipart/form-data">
<ul class="nav nav-tabs">
<li class="active">
<a href="#status" data-toggle="tab">Update Status</a>
</li>
<li>
<a href="#photos" data-toggle="tab">Post Photos</a>
</li>
<li>
<a href="#videos" data-toggle="tab">Post Videos</a>
</li>
</ul>
<div class="tab-content">
<div class="tab-pane active" id="status">
<textarea name="text"></textarea>
</div>
<div class="tab-pane" id="photos">
<input type="file" name="photo" class="input" />
<input type="text" name="photos-detail" placeholder="description" />
</div>
<div class="tab-pane" id="videos">
<input type="file" name="video" class="input" />
<input type="text" name="videos-detail" placeholder="description" />
</div>
</div>
<button type="submit" class="btn btn-primary" name="post">Post</button>
</form>
どんなアイデアでも本当に感謝しています。