36550

[code]

    <html>
    <head>
    <meta charset="utf-8">
    <title>たかしくんエディタβ</title>
    </head>
    <body>
    <form action="<?php echo $_SERVER['PHP_SELF']?>" method="post">
    <p>
    たかしくんはスーパーに買い物に行きました<br>
    1個<input type="text" name="price1" size="5">円の<input type="text" name="thing1" size="5">を<input type="text" name="number1" size="5">個、<br>
    1個<input type="text" name="price2" size="5">円の<input type="text" name="thing2" size="5">を<input type="text" name="number2" size="5">個、<br>
    買いました。合計金額はいくらでしょう？
    <input type="submit" value="送信" />
    </p>
    </form>
    <?php
    function takasi ($number1 , $number2 , $price1 , $price2 ) {
    $takasi = ($number1*$price1 + $number2*$price2);
    return $takasi;
    }
    if(isset($_POST["number1"])){
    $result=takasi ($_POST["number1"],$_POST["number2"],$_POST["price1"],$_POST["price2"],$_POST["thing1"],$_POST["thing2"]);
    echo "$_POST["price1"] の $_POST["thing1"] 、 $_POST["number1"] 個と $_POST["price2"] の $_POST["thing2"] 、 $_POST["number2"] 個の答えは $result 円です．";
    }
    ?>
    </body>
    </html>
    
[/code]

このコードについて

[code]

    Parse error: syntax error, unexpected '"', expecting identifier (T_STRING) or variable (T_VARIABLE) or number (T_NUM_STRING) in /NF/home/＊＊＊＊＊/＊＊＊＊＊＊＊/public_html/webprg/takasi-b.php on line 23
    
[/code]

と、エラーが吐かれます。  
どこがまずいのでしょうか？


CC BY-SA 3.0
2017-07-21T01:19:02.037
36548
2017-07-21T01:42:27.380
2017-07-21T01:31:35.317
24512
24512
question
php
このコードのParse error: syntax errorについて


エラー出力を読んでみましたでしょうか？  
そのままGoogle翻訳に突っ込んだ結果が下記になります。

>
> 解析エラー：/NF/home/g130/g1300124/public_html/webprg/takasi-b.php（23行目）の構文エラー、予期しない
> '"'、識別子（T_STRING）または変数（T_VARIABLE）または数値（T_NUM_STRING）

下記の行の構文がおかしいです。  
文字列は`""`で括ると思いますが、文字列中にエスケープしない`"`が含まれているためPHPが文字列の範囲が読み取れないと怒っています。

[code]

    echo "$_POST["price1"] の $_POST["thing1"] 、 $_POST["number1"] 個と $_POST["price2"] の $_POST["thing2"] 、 $_POST["number2"] 個の答えは $result 円です．";
    
[/code]

また、配列などキーを使用して変数展開する場合は`{}`を使用してください。

[code]

    echo "{$_POST['price1']} の {$_POST['thing1']} 、 {$_POST['number1']} 個と {$_POST['price2']} の {$_POST['thing2']} 、 {$_POST['number2']} 個の答えは $result 円です．";
    
[/code]


CC BY-SA 3.0
2017-07-21T01:42:27.380
36550
2017-07-21T01:42:27.380
36548
answer