首页 文章

将php文件转换为smarty for whmcs tpl

提问于
浏览
0

我试图将此代码转换为smarty,以便尽管我的whmcs应该工作,虽然我已经尝试将php文件包含在包含php的tpl中(它完全适用于它自己只是它不能正确显示虽然whmcs )所以我想将当前的php更改为smarty,以便他的代码直接从tpl文件运行 .

This是我在包含php页面时的样子,this基本上是我想要的是这是在我用 {php}?> 标签用 {/php} 替换所有 <?php 标签之后但它不能正常工作,因为我认为还有其他聪明的语法,需要改变,但我不知道什么和在哪里

有人可以帮忙吗?

<script type="application/javascript">
$(function(){

    $("input[type='radio']").change(function(){
        var val = $(this).val();
        $(this).parent().find("input[type='radio']").each(function(){
            if ($(this).val() < val){
                $(this).addClass("belowchecked");
            } else {
                $(this).removeClass("belowchecked"); 
            }
        });
    });
});
</script>

<?php
//Require Database
require('connect.php');
//Variables
$name = $_POST['name'];
$email = $_POST['email'];
$website = $_POST['website'];
$service = $_POST['service'];
$comment = $_POST['comment'];
$rating = $_POST['star'];
$robotest = $_POST['robotest'];
$captcha = $_POST['captcha'];
date_default_timezone_set('Europe/London');
$date = date('Y-m-d');
// If Form Is Submitted 
	if(isset($_POST['add'])){
// Check User Entered Name			
if(empty ($name)){
			$error[] = "<b>Name</b>";
		}
// Check User Entered Email	
if(empty ($email)){
			$error[] = "<b>Email Address</b>";
			}
// Checks Users Email is valid
 else if(!filter_var($email, FILTER_VALIDATE_EMAIL)) 
        {
		   $error[] = "<b>Email</b>"; 
           $error2[] = "Email is invalid";
        }
// If Website Is Not Empty
if (!empty ($website)) {
	// Check Website Is Valid
	if(!filter_var($website,   FILTER_VALIDATE_URL)) 
        {
		   $error[] = "<b>Website</b>";
            $error2[] = "<b>Website</b> must begin with <b>http://</b> and end with your domain extention";
        }	
}
// Else Website feild = null
else {
	$website = "";
}
//Check User Entered Rating
if(empty($rating)) {
	$error[] = "<b>Rating</b>";
}		
// Check User Entered Feedback		
if(empty ($comment)){
			$error[] = "<b>Feedback</b>";		
			}
// Check User Is Human
if($robotest) {
      $error[] = "You are a gutless robot.";
	  }
if ($captcha != $_SESSION['captcha']){
	$error2[] = "Please reenter <b>Captcha</b>";
	}
// If No Errors Insert To Database & Redirect To Feedback				
if (empty ($error)) {
	if (empty ($error2))
{
mysql_query("INSERT INTO comment (id, name, email, comment, rating, postdate, service, website) VALUES ('','$name','$email','$comment','$rating','$date','$service','$website')");

$status = "Thankyou for your feedback";
ob_end_flush;
header ("location: feedback.php#main");
}
}
}
?>
<section class="post-info" id="addfb" name="add">
<form action="#addfb" class="forms" method="POST">
<div class="stars">
    <input class="star star-5" id="star-1" type="radio" name="star" value="5" <?php if (isset($rating) && $rating=="5") echo "checked";?>/> 
    <label class="star star-5" for="star-1"></label>  
 
    <input class="star star-4" id="star-2" type="radio" name="star" value="4" <?php if (isset($rating) && $rating=="4") echo "checked";?>/> 
    <label class="star star-4" for="star-2"></label>
    
    <input class="star star-3" id="star-3" type="radio" name="star" value="3" <?php if (isset($rating) && $rating=="3") echo "checked";?>/> 
    <label class="star star-3" for="star-3"></label> 

    <input class="star star-2" id="star-4" type="radio" name="star" value="2" <?php if (isset($rating) && $rating=="2") echo "checked";?>/> 
    <label class="star star-2" for="star-4"></label>
    
    <input class="star star-1" id="star-5" type="radio" name="star" value="1" <?php if (isset($rating) && $rating=="1") echo "checked";?>/> 
    <label class="star star-1" for="star-5" ></label> 
</div>

<br>
Name <span class="Required">*Required</span><br>
  <input name="name" type="text" value="<?php echo $name; ?>">
  
</p>
<p>Email <span class="Required">*Required</span><br>
  <input name="email" type="text" value="<?php echo $email; ?>">
</p>
<p>Website <span class="Required">http://</span><br>
  <input name="website" type="text" id="website" value="<?php echo $website; ?>">
  </p>
<p>Service <span class="Required">*Required</span></p>
  <select name="service" class="services">
  <optgroup label="Peronal Services">
      <option value="Buisness Card Design" selected="selected">Business Card Design</option>
      <option value="Website Design">Website Design</option>
      <option value="Banner Design">Banner Design</option>
      <option value="Poster Design">Poster Design</option>
      <option value="Flyer Design">Flyer Design</option>
      <option value="Logo Design">Logo Design</option>
      </optgroup>
    
    <optgroup label="Service Packages" class="services">
      <option value="Buisness Package">Business Package</option>
      <option value="Personal Package">Personal Package</option>
      <option value="Charity Package">Charity Package</option>
      <option value="Mixed Services">Mixed Services</option>
      </optgroup>
  </select>
</p>

<p>Feedback<span class="Required"> *Required</span><br>
  <textarea id="comment" rows="8" cols="20" name="comment"><?php echo $comment; ?></textarea>
</p>
<!-- The following field is for robots only, invisible to humans: -->
    <p class="robotic" id="pot">
      <label>If you're human leave this blank:</label>
      <input name="robotest" type="text" id="robotest" class="robotest" />
<p>
<img class="img-responsive" src="captcha.php" />
<br>
<input name="captcha" placeholder="Enter Captcha" type="text" />
</p>
<p>
  <input type="submit" name="add" value="Add Feedback">
  
  <p>
  <?php 
// Show validation errros here
    if(!empty($error)){
	echo "Please check the following fields<br>";
    echo  implode($error, ', ');
	}
	
	if(!empty($error2)){
	echo "<br><br>";
    echo  implode($error2, '<br>');
	}
	echo $status;
?>
</p>
</p>
</form>
</section>

1 回答

  • 0

    @Mihai P我现在已经解决了这个问题,只需更改一些代码并使用 {include_php file=""} so diplay正确并且我已经将sql代码转换为pdo这样更好吗?关于验证码我现在正在使用recaptcha而不是我的计划只是如果你有任何进一步的建议就必须把它放进去请告诉我

    非常感谢你

    新TPL

    <div class="box04">
      <div class="box04Top"></div>
      <div class="box04Content">
         <h1 class="headingStyle01">
    <span class="color2"><span class="color1"><span class="color3">Client Feedback</span></span></span></h1> <p class="pStyle01">Click feedback to Pause and click again Restart</p> <p>{include_php file="fb.php"}</p> </div> </div> </div> <div class="bodyRight"> <div class="client_fb"> {include_php file="addfb.php"} </div> </div>

    新的显示数据

    <script>
    window.addEventListener('load', function () {
        function go() {
            i = i < height ? i + step : 1;
            m.style.marginTop = -i + 'px';
        }
        var i = 0,
            step = true,
            space = '&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;';
        var m = document.getElementById('marquee');
        var t = m.innerHTML;
        m.innerHTML = t + space;
        m.style.position = 'absolute';
        var height = (m.clientHeight + 1);
        m.style.position = '';
        m.innerHTML = t + space + t + space + t + space + t + space + t + space + t + space + t + space;
    
      m.addEventListener('click', function () {
            step = !step
      }, true);
    
        var x = setInterval(go, 50);
    }, true);
    </script>
    </head>
    
    <section id="feedback">
    
      <ol id="posts-list">
    
        <li>
    
          <article class="hentry">
    
    <div id="main"> 
            <div id="marquee">
              <div> 
              <?php 
    require('connect.php'); 
    
    foreach($db->query('SELECT * FROM comment ORDER BY id DESC') as $row) {
    	if(!$row) {
            echo "No Comments Found";}
     else {		    
     
     $dbname = $row['name']; 
     $dbrating = $row['rating']; 
     $dbwebsite = $row['website']; 
     $dbservice = $row['service']; 
     $dbdate = $row['postdate']; 
     $dbcomment = $row['comment']; 
     $newDate = date("l dS F Y", strtotime($dbdate));
    ?>             
    
    <div id="commenttop"> 
     <div id="userdetails"><?php echo "{$dbname} - {$dbservice}" ?></div> 
      <div id="rating"> 
      <?php  
    if ($dbrating == 1) { 
      echo '<img src="images/activestar.png" width="20" height="20" /> <img src="images/star.png" alt="" width="20" height="20" /><img src="images/star.png" alt="" width="20" height="20" /><img src="images/star.png" alt="" width="20" height="20" /><img src="images/star.png" alt="" width="20" height="20" />'; 
    } 
    
    if ($dbrating == 2) { 
      echo '<img src="images/activestar.png" width="20" height="20" /> <img src="images/activestar.png" width="20" height="20" /><img src="images/star.png" width="20" height="20" /><img src="images/star.png" width="20" height="20" /><img src="images/star.png" width="20" height="20" />'; 
    } 
    
    if ($dbrating == 3) { 
      echo '<img src="images/activestar.png" width="20" height="20" /> <img src="images/activestar.png" width="20" height="20" /><img src="images/activestar.png" width="20" height="20" /><img src="images/star.png" width="20" height="20" /><img src="images/star.png" width="20" height="20" />'; 
    } 
    
    if ($dbrating == 4) { 
      echo '<img src="images/activestar.png" width="20" height="20" /> <img src="images/activestar.png" width="20" height="20" /><img src="images/activestar.png" width="20" height="20" /><img src="images/activestar.png" width="20" height="20" /><img src="images/star.png" width="20" height="20" />'; 
    } 
    
    if ($dbrating == 5) { 
      echo '<img src="images/activestar.png" width="20" height="20" /> <img src="images/activestar.png" width="20" height="20" /><img src="images/activestar.png" width="20" height="20" /><img src="images/activestar.png" width="20" height="20" /><img src="images/activestar.png" width="20" height="20" />'; 
    } 
    ?> 
      </div> 
    </div> 
    
    <div id="commentbtm"><?php echo "$dbcomment"?> 
    <div id="date"><?php echo $newDate?></div> 
    </div> 
    
    <?php     
            } 
        } 
    ?> 
            </div>
          </div> 
            </div>
          <!-- /.entry-content -->
    
        </article></li>
    
      </ol><!-- /#posts-list -->
    

    新添加表格

    <script type="application/javascript">
    $(function(){
    
        $("input[type='radio']").change(function(){
            var val = $(this).val();
            $(this).parent().find("input[type='radio']").each(function(){
                if ($(this).val() < val){
                    $(this).addClass("belowchecked");
                } else {
                    $(this).removeClass("belowchecked"); 
                }
            });
        });
    });
    </script>
    <?php
    //Require Database
    require('connect.php');
    //Variables
    $name = $_POST['name'];
    $email = $_POST['email'];
    $website = $_POST['website'];
    $service = $_POST['service'];
    $comment = $_POST['comment'];
    $rating = $_POST['star'];
    date_default_timezone_set('Europe/London');
    $date = date('Y-m-d');
    
    // If Form Is Submitted 
    	if(isset($_POST['add'])){
    		
    // Check User Entered Name			
    if(empty ($name)){
    			$error[] = "<b>Name</b>";
    		}
    // Check User Entered Email	
    if(empty ($email)){
    			$error[] = "<b>Email Address</b>";
    			}
    // Checks Users Email is valid
     else if(!filter_var($email, FILTER_VALIDATE_EMAIL)) 
            {
    		   $error[] = "<b>Email</b>"; 
               $error2[] = "<b class='SmError'><b>Email</b> is invalid</b>";
            }
    // If Website Is Not Empty
    if (!empty ($website)) {
    	// Check Website Is Valid
    	if(!filter_var($website,   FILTER_VALIDATE_URL)) 
            {
    		   $error[] = "<b>Website</b>";
                $error2[] = "<b class='SmError'><b>Website</b> must begin with <b>http://</b> and end with your domain extention</b>";
            }	
    }
    // Else Website feild = null
    else {
    	$website = "";
    }
    //Check User Entered Rating
    if(empty($rating)) {
    	$error[] = "<b>Rating</b>";
    }		
    // Check User Entered Feedback		
    if(empty ($comment)){
    			$error[] = "<b>Feedback</b>";		
    			}
    			
    $APIkey = "";
        $postresult=$_POST['g-recaptcha-response'];
        $response=file_get_contents("https://www.google.com/recaptcha/api/siteverify?secret=$APIkey&response=$postresult");
    
        if (strpos($response, 'false')){
            $error[] = "<b>CAPTCHA</b>";
        }
    
    // If No Errors Insert To Database & Redirect To Feedback				
    if (empty ($error)) {
    	if (empty ($error2))
    {
    $stmt = $db->prepare("INSERT INTO comment (`id`, `name`, `email`, `comment`, `rating`, `postdate`, `service`, `website`) VALUES(:id, :name, :email, :comment, :rating, :postdate, :service, :website)");
    $stmt->bindValue(':id', $id);
    $stmt->bindValue(':name', $name);
    $stmt->bindValue(':email', $email);
    $stmt->bindValue(':comment', $comment);
    $stmt->bindValue(':rating', $rating);
    $stmt->bindValue(':postdate', $date);
    $stmt->bindValue(':service', $service);
    $stmt->bindValue(':website', $website);
    $stmt->execute();
    $status = "Thankyou for your feedback";
    }
    }
    }
    ?>
    <section class="post-info" id="addfb" name="add">
    <form action="" class="forms" method="POST">
    <div class="stars">
        <input class="star star-5" id="star-1" type="radio" name="star" value="5" <?php if (isset($rating) && $rating=="5") echo "checked";?>/> 
        <label class="star star-5" for="star-1"></label>  
     
        <input class="star star-4" id="star-2" type="radio" name="star" value="4" <?php if (isset($rating) && $rating=="4") echo "checked";?>/> 
        <label class="star star-4" for="star-2"></label>
        
        <input class="star star-3" id="star-3" type="radio" name="star" value="3" <?php if (isset($rating) && $rating=="3") echo "checked";?>/> 
        <label class="star star-3" for="star-3"></label> 
    
        <input class="star star-2" id="star-4" type="radio" name="star" value="2" <?php if (isset($rating) && $rating=="2") echo "checked";?>/> 
        <label class="star star-2" for="star-4"></label>
        
        <input class="star star-1" id="star-5" type="radio" name="star" value="1" <?php if (isset($rating) && $rating=="1") echo "checked";?>/> 
        <label class="star star-1" for="star-5" ></label> 
    </div>
    
    <br>
    Name <span class="Required">*Required</span><br>
      <input name="name" type="text" value="<?php echo $name; ?>">
      
    </p>
    <p>Email <span class="Required">*Required</span><br>
      <input name="email" type="text" value="<?php echo $email; ?>">
    </p>
    <p>Website <span class="Required">http://</span><br>
      <input name="website" type="text" id="website" value="<?php echo $website; ?>">
      </p>
    <p>Service <span class="Required">*Required</span></p>
      <select name="service" class="services">
      <optgroup label="Peronal Services">
          <option value="Buisness Card Design" selected="selected">Business Card Design</option>
          <option value="Website Design">Website Design</option>
          <option value="Banner Design">Banner Design</option>
          <option value="Poster Design">Poster Design</option>
          <option value="Flyer Design">Flyer Design</option>
          <option value="Logo Design">Logo Design</option>
        </optgroup>
        
        <optgroup label="Service Packages" class="services">
          <option value="Buisness Package">Business Package</option>
          <option value="Personal Package">Personal Package</option>
          <option value="Charity Package">Charity Package</option>
          <option value="Mixed Services">Mixed Services</option>
        </optgroup>
      </select>
    </p>
    
    <p>Feedback<span class="Required"> *Required</span><br>
      <textarea id="comment" rows="8" cols="20" name="comment"><?php echo $comment; ?></textarea>
    </p>
    <div class="g-recaptcha" data-theme="light" data-sitekey=""></div>
    <p>
      <input type="submit" name="add" value="Add Feedback">
    </form>
    <p>
      <?php 
    // Show validation errros here
        if(!empty($error)){
    	echo "Please check the following fields<br>";
        echo  implode($error, ', ');
    	}
    	
    	if(!empty($error2)){
    	echo "<br><br>";
        echo  implode($error2, '<br>');
    	}
    	echo $status;
    ?>
    </p>
    </p>
    
    </section>
    

    新的连接代码

    <?php
    $db = new PDO('mysql:host=HOST;dbname=;charset=utf8', 'USER', 'PASS');
    $db->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
    $db->setAttribute(PDO::ATTR_EMULATE_PREPARES, false);			
    ?>
    

    Live working preview

相关问题