2016-08-04 1 views
0

私はユーザーがタワーを設計するためにデータを入力できるウェブサイトを設計しようとしています。タワーの基本部分の寸法(高さ、幅、深さ)については、H x W x D形式(3 x 2 x 2)で表示したいと考えています。問題は、すべてが表示されているWebサイトの2ページ目のPHPファイルの連結に問題があります。ここでPOSTコマンド(PHP)が連結を拒否する

は私のコードは、これまでのようになります。

<!DOCTYPE html> 
<html> 
<head> 
    <title>Results for tower design</title> 
</head> 
<body> 
    Pillar base shape: <?php echo $_POST["tBase"]; ?><br> 
    Pillar dimensions: <?php echo ($_POST["tHeight"];)." x ".($_POST["tWidth"];)." x ".($_POST["tDepth"];) ?><br> 
</body> 
</html> 

それは私が一般的な初心者のエラーを作るかもしれない可能性が高いです。もしそうなら、私はどこが間違っていたのか、それを避ける方法を知りたい。

+1

を外し、PHPはに指示を必要としPHPコードブロックの終了タグは自動的にセミコロンを意味します; PHPブロックの最後の行を終了するセミコロンを持つ必要はありません。ブロックが存在する場合、直後の改行が含まれます。 "* –

+0

...これを実行すると、' Parse error:syntax error、unexpected ';'あなたはエラーをチェックしなかったか、エラーを投稿していませんでした。 –

答えて

2

不適切な場所にいくつか余分なセミコロンがあります。セミコロンは、PHP文の終わりを示します。文字列を作成する途中では使用しないでください。

($_POST["tHeight"];) 

それらを削除し、あなたの出力をサニタイズ(またはあなたがXSS attacksに開かれます)を確認して、これを実行する

htmlspecialchars($_POST["tHeight"])." x ".htmlspecialchars($_POST["tWidth"])." x ".htmlspecialchars($_POST["tDepth"]) 

、あなたを投げているだろう:Parse error: syntax error, unexpected ';' in...

使用をテスト中のエラー報告。

プラス

、あなたのPOSTアレイは値が含まれているし、あなたのフォームが指定された属性に一致すると、POSTメソッドを使用していることを確認してください。

+0

あなたはセミコロンについて何を言っているのか知っていますか?* ;-) edit:あ、そうでした。私の悪い。 –

+0

それについてのマニュアルへのインク:http://php.net/manual/en/language.basic-syntax.instruction-separation.php –

+0

@ Fred-ii-良いもの – Machavity

0

楽しい事実、あなたはそれをすべて、単一のラインとして示したきたことができます:すべては、それが二重引用符でラップされ

Pillar dimensions: <?php echo "{$_POST["tHeight"]} x {$_POST["tWidth"]} x {$_POST["tDepth"]}"; ?> 

エコー変数だけで{}で包むエコーされていることができます。

0

CやPerlのように「*マニュアルhttp://php.net/manual/en/language.basic-syntax.instruction-separation.phpからsemicolumns

<?php echo ($_POST["tHeight"] ." x ".$_POST["tWidth"] ." x ".$_POST["tDepth"]); ?> 
関連する問題