2

OK、これを機能させようとしましたが、PHPフォームからMySqlデータベースに保存する場所からアドレスと座標を取得できないようです。どんな助けでも私のコルチゾールレベルを大幅に下げます:)

<?php
if (isset($_POST['submitted'])) {

include('dbconn.php');

$con = mysqli_connect(db_host, db_user, db_pass, db_name);

    $value1 = mysql_real_escape_string($_POST['name']);
    $value2 = mysql_real_escape_string($_POST['address']);
    $value3 = mysql_real_escape_string($_POST['postcode']);
    $value4 = mysql_real_escape_string($_POST['lat']);
    $value5 = mysql_real_escape_string($_POST['lng']);

    $sqlinsert  = "INSERT INTO cafes (name, address, postcode, lat, lng) VALUES ('$value1', '$value2', '$value3', '$value4', '$value5')";

    if (!mysqli_query($con, $sqlinsert)) {
        die('error inserting new record');
    }
    $newrecord = "1 new address added to database";

}
?>


<!DOCTYPE HTML>
<html>
<head>
<meta charset="UTF-8">
<title>DB Upload</title>
</head>

<body>
<h1>Insert New Address</h1>
 <form id="myForm" method="post" action="index3.php">
 <input type="hidden" name="submitted" value="true">
<fieldset>
<legend>New PLaces</legend>
<label>Name<input type="text" name="name"></label>
<label>Address<input type="text" name="address"></label>
<label>Postcode<input type="text" name="postcode"></label>
<label>Latitude<input type="text" name="lat"></label>
<label>Longitude<input type="text" name="lng"></label>
</fieldset>
<input type="submit" name="sub" value="Submit">
</form>
<?php
echo $newrecord
?>

</body>
</html>

接続はそこにあり、これが毎回私の既存のテーブルに表示されるものです:

ここに画像の説明を入力

自動インクリメントとして「id」を含める必要がないことはわかっていますが、それが問題の原因であると感じています。

どんな助けでも大歓迎です!!

4

2 に答える 2

1

変化する:

$value1 = mysql_real_escape_string($_POST['name']);

に:

$value1 = mysqli_real_escape_string($con,$_POST['name']); 

他の人にも同じことをするとうまくいきます。

于 2013-10-01T15:05:29.947 に答える