无法使用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

回到顶部