2009-09-02 7 views
0

私は1つのPHPプロジェクトを完成させました。私はserver.Iにアップロードしました。これをwindowasでdevlopvepedしていましたが、リモートのLinuxサーバーにデプロイしようとしています。しかし、私はエラーを取得しています。 ページの一部が表示されていない理由がわかりません。 たとえば、私は以下のように1ページのappplyを持っています。私は私が見ることができない他の部分だけを見ることができます。phpプロジェクトのデプロイメント新しい問題

<?php 
require 'inc/header.php'; 
require 'inc/config.php'; 
require 'inc/functions.php'; 



$QUERY0 = " 
      SELECT * 
      FROM states 
      "; 

     $result0 = send_query($QUERY0); 
     $i=0; 
     while($row = mysql_fetch_array($result0)) 
      { 
       $states_names[$i]=$row['sname']; 
       $states_val[$i] =$row['id']; 
       $i++; 

      } 

$QUERY1 = " 
      SELECT * 
      FROM courses 
      "; 

     $result1 = send_query($QUERY1); 
     $i=0; 
     while($row = mysql_fetch_array($result1)) 
      { 
       $courses_names[$i]=$row['cname']; 
       $courses_val[$i]=$row['id']; 
       $i++; 

      } 


$QUERY2 = " 
      SELECT * 
      FROM jobprofile 
      "; 

     $result2 = send_query($QUERY2); 
     $i=0; 
     while($row = mysql_fetch_array($result2)) 
      { 
       $jobprofiles_names[$i]=$row['jobname']; 
       $jobprofile_val[$i]=$row['jobid']; 
       $i++; 

      } 



$QUERY3 = " 
      SELECT * 
      FROM edu 
      "; 

     $result3 = send_query($QUERY3); 
     $i=0; 
     while($row = mysql_fetch_array($result3)) 
      { 
       $edu_names[$i]=$row['eduq']; 
       $edu_val[$i]=$row['id']; 


       // echo "***********" .$edu_names[$i]; 
       $i++; 

      } 






?> 

<div class="left"> 
    <div class="left_articles"> 

     <h2><a href="#">Register</a></h2> 
     <p class="description">Please submit the folloing form</p> 
     <p> 
      <form action="check.php" method="post"> 

      <table border="0"> 

       <tbody> 
        <tr> 
         <td>First name</td> 
         <td><input type="text" name="fname" value="" /></td> 
        </tr> 
        <tr> 
         <td>Last name</td> 
         <td><input type="text" name="lname" value="" /></td> 
        </tr> 
        <tr> 
         <td>Address</td> 
         <td><input type="text" name="address" value="" /></td> 
        </tr> 

        <tr> 
         <td>age</td> 
         <td><input type="text" name="age" value="" /></td> 
        </tr> 

        <tr> 
         <td>State of origin</td> 
         <td> 
          <select name="origin"> 
           <? $i=0; 
            foreach($states_names as $state) 
            { 

             $val= $states_val[$i] ; 
           ?> 
           <option value="<? echo $val; ?>"><? echo $state; ?> </option> 
           <? 
             $i++; 
            } 
           ?> 
          </select> 
         </td> 
        </tr> 
        <tr> 
         <td>Mobile no</td> 
         <td><input type="text" name="mobile" value="" /></td> 
        </tr> 
        <tr> 
         <td>Sex</td> 
         <td><select name="sex"> 
           <option value="1">Male</option> 
           <option value="0">Female</option> 
         </select></td> 
        </tr> 
        <tr> 
         <td>Marrital Status</td> 
         <td><select name="ms"> 
           <option value="0">Single</option> 
           <option value="1">Married</option> 
         </select></td> 
        </tr> 
        <tr> 
         <td>Email</td> 
         <td><input type="text" name="email" value="" /></td> 
        </tr> 
        <tr> 
         <td>Job Applying For</td> 
         <td><select name="jobtype"> 
           <? $i=0; 
            foreach($jobprofiles_names as $job) 
            { 

             $val= $jobprofile_val[$i] ; 
           ?> 
           <option value="<? echo $val; ?>"><? echo $job; ?> </option> 
           <? 
             $i++; 
            } 
           ?> 
         </select> 
         </td> 
        </tr> 

        <tr> 
         <td>Have u worked in this sector before</td> 
         <td><select name="exp"> 
           <option value="0">no</option> 
           <option value="1">yes</option> 

         </select></td> 
        </tr> 
        <tr> 
         <td>Which department of this sector u have worked?</td> 
         <td> <input type="text" name="exptype" value="" /> 

         </td> 

        </tr> 
        <tr> 
         <td>Years of experinece in this sector</td> 
         <td><input type="text" name="yrsexp" value="" /></td> 
        </tr> 

        <tr> 
         <td>Higest Educational qualification</td> 
         <td><select name="eduq"> 
           <? $i=0; 
            foreach($edu_names as $ed) 
            { 

             $val= $edu_val[$i]; 
           ?> 
           <option value="<? echo $val; ?>"><? echo $ed; ?> </option> 
           <? 
             $i++; 

            } 
           ?> 
         </select> 

         </td> 
        </tr> 

        <tr> 
         <td>Course taken in above educational qualification</td> 
         <td><select name="crc"> 

           <? $i=0; 
            foreach($courses_names as $crc) 
            { 

             $val= $courses_val[$i]; 
           ?> 
           <option value="<? echo $val; ?>"><? echo $crc; ?> </option> 
           <? 
             $i++; 

            } 
           ?> 
         </select> 

         </td> 
        </tr> 

        <tr> 
         <td>Grade obtained in the above educational qualification</td> 
         <td><select name="grade"> 
           <option value="0">A</option> 
           <option value="1">B</option> 
            <option value="2">C</option> 
            <option value="3">D</option> 

         </select> 

         </td> 
        </tr> 


        <tr> 
         <td></td> 
         <td><input type="submit" value="Apply now" /></td> 
        </tr> 
       </tbody> 
      </table> 
      <input type="hidden" name="action" value="check" /> 
      </form> 

     </p> 
    </div> 


</div> 



<? require 'inc/right.php' ?> 

<? require 'inc/footer.php' ?> 

マイファイルの説明は次のとおりです。 ヘッダーにはヘッダーが含まれています righ.phpにはページの右側が含まれています

ページが完全に表示されないのはなぜですか?スラッシュ/位置に問題がありますか? WindowsとLinuxでそれは違いますか?

答えて

1

"トップパーツ"とはどういう意味ですか?また

、そう

<?php ... ?> 

代わりの

<? ... ?> 
2

は株式会社および株式会社/ headers.phpすべて小文字用のファイルやディレクトリはあり、明示的にPHPのように自分自身にラベルを付けるために、あなたのPHPタグを変更してみてくださいファイルシステムで? Unixのファイル名では大文字と小文字が区別されます。インクルードを変​​更して、エラーが発生するかどうかを確認する必要があります。

2

また、すべてのファイルの行末を確認する必要があります。 Windowsで開発した場合は、ファイル全体にcr/lf行の末尾がある可能性が非常に高いです。ファイルをLinuxサーバーに転送した方法によっては、ファイルが変換されるかどうかは関係ありません。特に混在しているとトラブルが発生する可能性があります。

もう1つのチェックは、ファイルのエンコーディングです。これらは、プロジェクト全体で一貫している必要があります。 UTF-8にある場合は、にはByte-order mark (BOM)が含まれていないことを確認してください。添付ファイルに問題が発生する可能性があります。

2

WindowsとLinuxで相対パスが異なるように処理されています。

絶対パスを使用してください(WindowsとLinuxの両方のphpは両方ともスラッシュディレクトリ区切り文字を受け入れます)。

アプリケーションは常に絶対パスから実行されている

と仮定すると、(Linuxサーバの例):

/home/www/index.php 

そして、あなたには、スクリプトは次の場所にあります。

/home/www/inc/header.php 

を...

それから絶対パスを定義し、各インクルード文字列に連結することができます。

<?php 

define('ABSPATH', dirname(__FILE__)); 

... 

include ABSPATH . '/inc/header.php'; 

... 

include ABSPATH . '/inc/footer.php'; 

?> 
0

定数DIRECTORY_SEPARATORがここに表示されます。

​​

で:

は交換してください

require dirname(__FILE__) . DIRECTORY_SEPARATOR . 'inc' . DIRECTORY_SEPARATOR . 'header.php'; 

そして残りの似た何かをします。

関連する問題