Php bir görünüm seçici oluşturma Üzerine Düşünceler

1 Cevap php

Ben php görünümü ve denetleyici ayırmak için güzel bir yol oluşturmak için arıyorum.

Bir giriş kutusu localhost/index.php?view=signup ve bir kayıt kutusu ile tüm sayfayı görmek istiyorum .. ve NOT: Ne olmasını istiyorum insanlar için gitmek istiyorum.

Herkes bu önce .. ben özellikle JavaScript gizler işlemek izin zarif bir yol arıyorum yapılan ve php ilk sayfasını yükler sonra gösterir olup olmadığını merak ediyorum. Bu gibi pek belki bir şey:

<div class="login" style="display:<?php echo $login; ?>;">

Hüner Ben varsayılan (localhost / index.php) her şeyi göstermek istiyor olmasıdır. Yani eğer? View = .. .. ben gerçekten bir ton ile benim görünüm yığılmayı istemiyorum tüm gösterecektir sonra tanımlı değilse isset ile ifadeler () ..

Bana bu sorunu için çözüm bilsin!

Thanks, Matt Mueller

1 Cevap

Sadece böyle bir şey: (CSS ile ilgisi yok)

<?php

// login.php

if(strtolower($_GET['v']) == 'signup'){

?>
<form>/* sign up form goes here */</form>
<?php

}else{

?>
<form>/* login form goes here */</form>
<?php


}

?>

Bir php dosyasında çok sayıda sayfa varsa veya seçme anahtarı / kullanılmış olabilir:

<?php

// login.php

switch(strtolower($_GET['v'])){

case 'signup':
?>
<form>/* sign up form goes here */</form>
<?php    
break;

default:    
?>
<form>/* login form goes here */</form>
<?php
break;

}

?>

Şerefe!

UPDATE: AJAX kullanma yeteneği açısından, böyle bir şey yapabilirsiniz:

<?php

// login.php

$_showcontent = false;
if(isset($_GET['c'])){$_showcontent = true;}

if(!$_showcontent){
  // load the header, javascript components and whatever so on
  echo '<div id="view">';
}

switch(strtolower($_GET['v'])){

case 'signupstep1':
?>
<a href="#view" onclick="return go_step2();">Step 2</a>
<?php    
break;

case 'signupstep2':
?>
<form>/* sign up form goes here */</form>
<?php    
break;

case 'signupcomplete':
?>
  /* sign up complete page */
<?php    
break;

default:    
?>
<a href="#view" onclick="return go_signup();"></a>
<?php
break;

}

if(!$_showcontent){
  echo '</div>';    
  // footer and what other stuff you need here
}

?>

Javascript kodu:

<script type="text/javascript">
/* <![CDATA[ */

function go_signup(){
  $("#view").load("<?php echo $_SERVER['PHP_SELF'] ?>?c&v=signupstep1");
  return false;
}

function go_step2(){
  $("#view").load("<?php echo $_SERVER['PHP_SELF'] ?>?c&v=signupstep2");
  return false;
}

/* ]]> */</script>