【问题标题】:PHP (PDO) urlencoded how to decode in javascript? decodeURI? or decodeURIcomponent?PHP(PDO)urlencoded如何在javascript中解码?解码URI?还是解码URI组件?
【发布时间】:2013-12-16 06:39:30
【问题描述】:

我将PHPurlencodeINSERTED 使用database 使用PDO bindParamiter....

我知道我不应该关心 urlencoding 数据并且我应该 让PHP-PDO消毒

但是,我想先将urlencode 放在databasing 之前。

类似:

if(isset($_POST['url']))  {

$_POST['url'] = urlencode($_POST['url']);

//INSERT QUERY:
"INSERT INTO table_name (url_1) VALUES (:url_1)"

PDO 绑定:

 /*** bind the paramaters ***/
        $stmt->bindParam(':url_1', $_POST['url'])
}

要检索数据: PHP

    if(isset($_GET['url_string'])){

    //RUN Select Query using PDO Mysql

    $getURL = "SELECT url_1 FROM table_name"

    //The $getURL variable will contain an associative array like: 

   // array [0]['url_1'] ///This will be the valued inserted previously.

    ///Then json_encode()

    $sendOut = json_encode(array('url_DATA' => $getURL))

    echo $sendOut;
    }

问题:

我正在使用 jQuery 的 $.getJSON 函数从数据库中获取数据。

类似:

$.getJSON('ulr.func.php',{url_string:""},function(myOutPut){


    // Then I decode the URL retrieved from the DATABASE here.

      decodeURIComponent(myOutPut.url_DATA)

decodeURIComponent 尖叫:

URIError:格式错误的 URI 序列

})

Response 下的 Firebug 控制台中,我看到了理想的输出,例如:

[{"unit_id":"46","unit_name":"21A","unit_pic_url":"*uProf/46/pcs/pdsp/p500/c2f971b1e92b2dce68489198cf0a300a_158_15875.jpg*uProf/46/pcs/pdsp/p500 /b5c4045574cb0f927fb096b6369f4ba5_78_72234.jpg*uProf/46/pcs/pdsp/p500/6fb26702857b0f464c543a9c13a1f7b1_333_228657.jpg*uProf/46/pcs/pdsp/p500/69c18d8cbf8e940b23f9abe8138d0e7f_303_211896.jpg*uProf/46/pcs/pdsp/p500/9e74b1d7d037cd9de95c0b78522e04a2_321_79258.jpg","unit_default_pic ":"uProf/46/pcs/pdsp/p500/c2f971b1e92b2dce68489198cf0a300a_158_15875.jpg","unit_building":"21","unit_building_name":"ELIZABETH+PLACE","unit_location":"4","location_name":"Salcedo +Village","city":"2","city_name":"Makati","unit_for":"1","unit_type":"2","unit_size":"109sqm","unit_improvements":"完全+Furnished","unit_view":"Elizabeth+Place","unit_condition":"Well+Maintained","unit_status":"Vacant+","unit_availability":"Anytime","unit_parkings":"1","unit_price ":"75,000.00","unit_amenities":"游泳+游泳池%2CGym+and+功能+房间","unit_proximities":"+Near+Salcedo+Village","u nit_remarks":"2+卧室+For+Rent+%40+ELIZABETH+PLACE%0D%0A描述%3A+FULLY+FURNISHED+%0D%0AAsking+价格%3A+P75%2C000+包含+协会+会费+%0D%0AFloor+面积%3A109+平方米%0D%0A楼层+楼层%3A+高层%0D%0A联系人+人员%3A+女士+天使+Velo%0D%0ACel+号码+%3A+09175790257%2F+09989748767%0D %0ATel+no.%3A+894-4745%2F+979-4842","unit_map":"%3Ciframe+width%3D%22425%22+height%3D%22350%22+frameborder%3D%220%22 +scrolling%3D%22no%22+marginheight%3D%220%22+marginwidth%3D%220%22+src%3D%22https%3A%2F%2Fmaps.google.com.ph%2Fmaps%3Ff%3Dq%26amp %3Bsource%3Ds_q%26amp%3Bhl%3Den%26amp%3Bgeocode%3D%26amp%3Bq%3Delisabeth%2Bplace%2Bmakati%2Csalcedo%2Bvillage%26amp%3Baq%3D%26amp%3Bsll%3D14.546956%2C121.05351%26amp %3Bsspn%3D0.007685%2C0.013078%26amp%3Bie%3DUTF8%26amp%3Bhq%3Delizabeth%2Bplace%2Bmakati%2Csalcedo%2Bvillage%26amp%3Bhnear%3D%26amp%3Bll%3D14.561158%2C121.022669% %3Bspn%3D0.030738%2C0.052314%26amp%3Bt%3Dm%26amp%3Bz%3D14%26amp%3Biwloc%3DA%26amp%3Bcid%3D8098826603847629943%26amp%3Boutput%3Dembed %22%3E%3C%2Fiframe%3E%3Cbr+%2F%3E%3Csmall%3E%3Ca+href%3D%22https%3A%2F%2Fmaps.google.com.ph%2Fmaps%3Ff%3Dq%26amp%3Bsource %3Dembed%26amp%3Bhl%3Den%26amp%3Bgeocode%3D%26amp%3Bq%3Delisabeth%2Bplace%2Bmakati%2Csalcedo%2Bvillage%26amp%3Baq%3D%26amp%3Bsll%3D14.546956%2C121.05351%26amp%3Bsspn %3D0.007685%2C0.013078%26amp%3Bie%3DUTF8%26amp%3Bhq%3Delizabeth%2Bplace%2Bmakati%2Csalcedo%2Bvillage%26amp%3Bhnear%3D%26amp%3Bll%3D14.561158%2C121.022669%26amp%B %3D0.030738%2C0.052314%26amp%3Bt%3Dm%26amp%3Bz%3D14%26amp%3Biwloc%3DA%26amp%3Bcid%3D8098826603847629943%22+style%3D%22color%3A%230000FF%3Btext-align%3Aleft %22%3EView+Larger+Map%3C%2Fa%3E%3C%2Fsmall%3E","unit_display_mode":"1"," added_by":"Angel_Baldo_Velo"," added_by_email":"eirishanjelavelo@yahoo.com", “添加日期”:“2013-12-05 01:17:08","stags":"2BR, 109sqm, ELIZABETH+PLACE, [1] 停车位, 空缺+,马卡蒂"}]

编辑 *这是复制并粘贴在这里:* http://meyerweb.com/eric/tools/dencoder/

并且不会产生错误,但decodes 完全符合要求。

他们在做什么以便他们的网站可以轻松解码编码数据?...任何建议都非常感谢。

【问题讨论】:

  • urlencode()ing 数据在插入数据库之前是完全没有意义的。它没有任何安全目的,并且可以将您的数据膨胀到原始大小的 2-3 倍。那为什么要这么做呢?
  • 如果是这样,那么meyerweb.com/eric/tools/dencoder 怎么能轻松解码输出呢? NO ERROR ...他们可能会做些什么来解码数据是这样的结构?
  • 我不确定出了什么问题,但可以说这也无关紧要。在这种情况下,URLencoding完全没有必要。首先没有理由这样做。
  • 这并没有告诉我为什么会出现错误...我的观点是如果 OutPut 数据受到 urlencode() 的影响,那么可能是什么原因导致相同字符串在解码器中被很好地解码,没有错误,但应用程序中有错误?..
  • 我的意思是如果数据必须是urlencoded 怎么办?...或者你的意思是urlencode 函数有点弃用?这里什么也没说:php.net/function.urlencode。请教育我。谢谢

标签: javascript php getjson urlencode decodeuricomponent


【解决方案1】:

我认为您可以先尝试unescape,然后再尝试decodeURI,因为PHP-PDO 会转义字符串中的内容。

【讨论】:

  • 你的意思是 unescape 在什么级别?.. PHP 的json_encode 之前或到达Javascript 页面时?
猜你喜欢
  • 2015-05-19
  • 1970-01-01
  • 2012-05-01
  • 1970-01-01
  • 1970-01-01
  • 2011-02-05
  • 2016-02-29
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多