无法使用JSON和PHP将URL链接存储到MySQL中
我需要一些关于我的大学作业的明智建议。 我的工作是使用Phonegap制作年鉴,这是我第一次使用AJAX,JSON和JQuery Mobile。无法使用JSON和PHP将URL链接存储到MySQL中
将图片上传到数据库后,我尝试从我的Google云端硬盘上传url链接。
这里我javascript代码:
<script type="text/javascript"> $(document).ready(function() {
$("#insert").click(function() {
var nim = $("#NIM").val();
var kesan = $("#kesan").val();
var image = $('#image').val();
var nama = $("#nama").val();
var prodi = $("#prodi option:selected").text();
var angkatan = $("#angkatan").val();
var dataString = "nim=" + nim + "&nama=" + nama + "&prodi=" + prodi + "&angkatan=" + angkatan +"&kesan=" + kesan + "&image=" + image + "&insert=";
if ($.trim(nim).length > 0 & $.trim(kesan).length > 0 & $.trim(nama).length > 0 & $.trim(prodi).length > 0 & $.trim(angkatan).length > 0& $.trim(image).length > 0) {
$.ajax({
type: "POST",
url: "http://localhost/perpusub/daftar.php",
data: dataString,
crossDomain: true,
cache: false,
beforeSend: function() {
$("#insert").val('Memasukkan...');
},
success: function(data) {
if (data == "success") {
alert("upload buku tahunan berhasil");
location="index.html";
$("#insert").val('submit');
} else {
alert("Mohon maaf tampaknya anda sudah pernah mengupload buku tahunan sebelumnya.\n Silahkan hubungi admin web ini.");
}
}
});
}
return false;
});
});
</script>
这是我的形式上传的图片,并存储每个学生的任何信息:
<body> <div id="head1">
Buat Halaman <br>Buku Tahunan Baru<br>
<a href="index.html" class="button button-clear" id=head>Keluar</a>
</div>
<br/>
<br/>
<div class="list">
<input type="hidden" id="id" value="" />
<div class="item">
<label>NIM</label>
<input type="text" id="NIM" value="" />
</div>
<div class="item">
<label>Nama</label>
<input type="text" id="nama" value="" />
</div>
<div class="item">
<label>Prodi</label>
<select id="prodi">
<option value="TIF" selected>TEKNIK INFORMATIKA</option>
<option value="SI">SISTEM INFORMASI</option>
<option value="TKOM">TEKNIK KOMPUTER</option>
<option value="PTI">PENDIDIKAN TEKNOLOGI INFORMASI</option>
<option value="TI">TEKNIK INFORMASI</option>
</select>
</div>
<div class="item">
<label>Angkatan</label>
<input type="text" id="angkatan" value="" />
</div>
<div class="item">
<label>Kesan Pesan</label>
<input type="text" id="kesan" value="" />
</div>
<div class="item">
<label>Link File Foto<br></label>
<input type="text" id="image" value="" />
</div>
<div class="item">
<input type="submit" id="insert" class="button button-block" value="DAFTAR" />
</div>
</div>
</body>
</html>
这是PHP代码,将其存储到数据库。
<?php include "db.php";
if(isset($_POST['insert']))
{
$nim=$_POST['nim'];
$kesan=$_POST['kesan'];
$nama=$_POST['nama'];
$prodi=$_POST['prodi'];
$angkatan=$_POST['angkatan'];
$image = $_POST['image'];
$qa=mysqli_query($con, "INSERT INTO `anggota`(`NIM`, `nama`, `prodi`, `angkatan`, `kesanPesan`, `photo`) VALUES ('$nim','$nama','$prodi','$angkatan','$kesan','$foto')");
if($qa){
echo "success";
}
else{
echo "error";
}
}
}
?>
,这是JSON解码器年鉴页:
<script type="text/javascript"> $(document).ready(function() {
var url = "http://localhost/php-code/json.php";
$.getJSON(url, function(result) {
console.log(result);
$.each(result, function(i, field) {
var id = field.id;
var title = field.title;
var duration = field.duration;
var price = field.price;
$("#listview").append("<a class='item' href='form.html?id=" + id + "&title=" + title + "&duration=" + duration + "&price=" + price + "'><span class='item-note'>$" + price + "</span><h2>" + title + " </h2><p>" + duration + "</p></a>");
});
});
});
</script>
但是,当我解码JSON来显示它到列表中,只显示损坏的图像图标。我认为将链接存储到数据库并将其解码时存在问题。
我需要帮助,因为我的任务必须在两天内完成。谢谢。
回答:
有许多可能的误差源的位置:
你是不是将它们插入到数据库之前转义特殊字符。使用mysqli_prepare(http://php.net/manual/en/mysqli.prepare.php)。此外,这可以为您节省SQL注入攻击(或多或少)
您正在使用哪个PHP版本?在真正的旧版本中,比如5.4和之前的版本,在get/post/cookie数据中的“邪恶”字符之前,有一个奇迹般地添加反斜杠的开关。见magic quotes configuration更多信息
以上是 无法使用JSON和PHP将URL链接存储到MySQL中 的全部内容, 来源链接: utcz.com/qa/265695.html