在我的URL中使用POST而不是GET来从CakePHP获取数据,也许是JQuery?

时间:2013-09-27 15:24:54

标签: jquery cakephp post get


编辑

         echo "<img  class='imageTagId' width='100' height='100'>"; 

这是我视图中的PHP代码行,它将保存徽标文件。

这是你给我的代码,经过编辑以使其与我的功能一起使用!然而,这个工作星期五晚上(我确定它是!!)现在它不是!!

           $(document).ready(function() {
            $.ajax({
                type: "POST",
                url: "/viewlogo",
                data: {
                    userid     : <?php echo $USER_ID ?>
                },
                success: function(result){
                    $(".imageTagId").attr('src', result);
                }
            });
        });

但是,如果我回到我的GET网址,那么它可以正常工作,

   echo "<img class='imageTagId' width='100' height='100' src='/viewlogo?userid=" . $USER_ID ."'

这行代码工作得很好!!我不知道我改变了什么,可能会改变这种情况从工作到不工作。

但它加载(或至少试图加载)页面

 <img class="imageTagId" width="100" height="100" src="&lt;!DOCTYPE html&gt; &lt;html&gt;&lt;head&gt; ...... more....

我做错了什么?

谢谢

格伦。


旧帖子

我使用CakePHP作为基础来构建一个上传然后获取所选用户的徽标文件的网站。这些文件保存在Cakes WEBROOT文件夹之外。这一切都没有任何问题。但我正在使用GET URL参数为所选用户设置数据以下拉徽标文件。

看起来像是

/DATAPATH?thisiswork=logos$userid=XX

我想要的是能够使用POST将这些变量传递到控制器上。我还将声明此路径已加载到img标记中并将徽标加载到我的视图中。

有什么想法吗?

我正在考虑使用JQuery的$ .ajax POST调用,但我不确定它们是否正确或将继续工作&gt;

非常感谢

格伦。

1 个答案:

答案 0 :(得分:2)

使用JQuery的$ .ajax POST或GET非常适合返回字符串或序列化数据,如XML或JSON。在我的情况下,我唯一可以看到它的用途是,如果您需要参数来创建图像,那么您可以让它返回新创建的徽标图像的URL:

$.ajax({
    type: "POST",
    url: "/DATAPATH",
    data: {
        thisiswork : logos, 
        userid     : XX
    },
    success: function(result){
        //ajax callback function, populate the result in the image tag's src attribute.
        $("#imageTagId").attr('src', result);
    }
});