小编Sha*_*ock的帖子

关于mysql_real_escape_string和strip_slashes的困惑

我让用户输入他们的名字,如:O'riley.

在我将这些数据输入MySQL DB之前,我运行了mysql_real_escape_string.

问题是,当我选择此数据进行显示并稍后使用时,它会显示为:O\'riley.

显然,这是预期的操作.我想知道的是,如果有一点可以肯定我可以将它存储在数据库中(仍然安全地逃避可能的恶意代码),这样我就不必strip_slashes()在输出上使用每次我在整个网络中调用数据应用程序吗?或者,我在这里错过了一些东西吗?

谢谢.

更新 请参阅Deceze答案中的评论.

php mysql mysql-real-escape-string stripslashes

5
推荐指数
2
解决办法
1413
查看次数

通过Google/Gmail而不是从我的服务器发送电子邮件的优点与缺点

我已经在堆栈上阅读了很多关于想要更改邮件类(即swiftmailer)以使用他们的Google Apps服务器/电子邮件地址向SMTP发送电子邮件的人的问题.

我能看到的唯一真正的好处是副本放在Gmail的已发送文件夹中.我现在克服了这个问题(没有SMTP),只需从我的服务器发送一封电子邮件,以保留所有内容的副本(即mail@whatever.com).

通过Gmail的SMTP服务器发送垃圾邮件是否有帮助,或者说"Google不认为这是由此服务器发送的"?还有什么我忽略的吗?

谢谢大家.

(是的,我的域名是由Google Apps托管的,用于电子邮件/日历/等等... MX记录已全部设置且功能正常).

php email gmail swiftmailer google-apps

5
推荐指数
1
解决办法
2517
查看次数

Google 图表 - 是否可以在图表中进行内容钻取?

HighCharts 有一个非常好的钻取功能:http://www.highcharts.com/demo/column-drilldown - 但我想知道它是否在谷歌图表可视化 API 中可用?据我所知,这是不可能的 - 但让我描述一下我的想法:

鼠标悬停时,会出现一个小弹出窗口,其中包含有关数据的附加信息。可以在其中放置一个链接吗?

因为我们在图表上有这些鼠标悬停事件,也许可以添加一个“单击”事件,我们可以用它做任何我们想做的事情?在这种情况下,我要么只需单击一下即可将用户发送到另一个 URL,或者可能强制图表进入新的图表动画(基本上是在这个庄园中创建向下钻取)。

我不太擅长 jQuery,所以我希望这里有一些专业知识。谢谢!

jquery google-visualization

5
推荐指数
2
解决办法
1万
查看次数

选择框的jQuery"选择" - 如何在AJAX加载选择元素后应用样式

所以我试图通过XAJAX加载后将选择的jQuery插件应用到选择框中.这是代码:

通常,我从页面加载开始,并且所有具有类的选择框都正确地正确设置样式:

$(document).ready( function () {        
    $(".chzn-select").chosen();
});
Run Code Online (Sandbox Code Playgroud)

接下来,我有一个函数,它使用XAJAX在页面上的指定DIV中显示新的选择框.这很好用.然而,它并没有被选中的风格所应用.

我也试图在那里添加一个延迟,因为我在一些论坛上读到了对某些人有用的东西.这是行不通的....

function getNewSelect(property_id){
    xajax_getNewSelect();
    $(".chzn-select-ajax").delay(5).chosen();
}
Run Code Online (Sandbox Code Playgroud)

有没有人有任何想法?

jquery select jquery-chosen

5
推荐指数
1
解决办法
2789
查看次数

Windows Server在下一页加载后保持会话时出现问题

我将分享我的基本配置,希望有人能够了解我的问题在于我的会话变量.会话不会在页面加载之间保存,对于我的生活,我无法确定原因.

这是我正在构建的第一个Windows PHP应用程序,所以在尝试了我能想到的所有内容之后,我现在感到很茫然.

会话保存路径是IS WRITABLE.使用此代码验证:

if (!is_writable(session_save_path()) ) {
    echo 'Session path "'.session_save_path().'" is not writable for PHP!'; 
}
Run Code Online (Sandbox Code Playgroud)

session.cookie_domain是空白的(没有设置任何东西).同样,根据我的经验,这是正确的.

我正在使用ToroPHP作为我的简单路由器.对于我的测试,我只是路由到一个非常简单的类.你会在下面看到它.

这是我的Web.Config文件.这是允许我使用ToroPHP的原因

<?xml version="1.0" encoding="UTF-8"?>
<configuration>
    <system.webServer>
        <rewrite>
            <rules>
                <rule name="Toro" stopProcessing="true">
                    <match url="^(.*)$" />
                    <conditions logicalGrouping="MatchAll">
                        <add input="{REQUEST_FILENAME}" matchType="IsFile" negate="true" />
                        <add input="{REQUEST_FILENAME}" matchType="IsDirectory" negate="true" />
                    </conditions>
                    <action type="Rewrite" url="index.php/{R:1}" />
                </rule>
            </rules>
        </rewrite>
        <httpErrors errorMode="Detailed" />
        <asp scriptErrorSentToBrowser="true"/>
    </system.webServer>
        <system.web>
            <customErrors mode="Off"/>
            <compilation debug="true"/>
        </system.web>
</configuration>
Run Code Online (Sandbox Code Playgroud)

这是我的配置脚本,它是第一个调用的东西(除了设置我的$ ABS_SITE_PATH var):

error_reporting(E_ALL);
ini_set('display_errors', 'On');
//SET …
Run Code Online (Sandbox Code Playgroud)

php session windows-server-2008-r2

5
推荐指数
1
解决办法
1134
查看次数

php/mysql安装中的unix时间戳 - 最好的MySQL数据类型存储它?

我试图找出我的数据库中存储unix时间戳的最佳数据类型和大小...

换一种说法:

INT(32)
Run Code Online (Sandbox Code Playgroud)

等等...

谢谢你的任何提示.

mysql unix-timestamp

3
推荐指数
1
解决办法
2778
查看次数

谷歌浏览器没有提交表格(js错误?)

我无法让Google Chrome提交表单.这变得非常荒谬.它最终聚焦一个随机形式字段(但每次都是相同的).

没有FF或IE的问题......

Chrome在开发人员工具中给出的两个错误是:

An invalid form control with name='state' is not focusable.
An invalid form control with name='unitName' is not focusable.
Run Code Online (Sandbox Code Playgroud)

但是,这些甚至不是Chrome决定关注的一个领域.我不知所措,有没有这样的经历?

javascript forms jquery google-chrome

3
推荐指数
1
解决办法
7142
查看次数

jQuery UI SelectMenu下拉列表 - 打开UP而不是DOWN

我正在使用jQuery UI选择菜单,偶尔会遇到一些问题.

它位于用户页面的左上角.使用"下拉/地址"类型,有时(看似随机),下拉菜单会打开UP而不是DOWN,除了第一个选项外,您无法选择其中的任何选项,因为它全部位于屏幕"上方".

有人知道那里的设置/选项迫使它打开吗?谢谢!

更新.... 11/23/11 1:11 pm est 以下是一些电话代码:

$(function(){
            $('select#selectionA').selectmenu({
                style:'dropdown', 
                menuWidth: 220,
                positionOptions: {
                    collision: 'none'
                },
                format: addressFormatting
            });
        });
Run Code Online (Sandbox Code Playgroud)

jquery-ui select-menu drop-down-menu

3
推荐指数
1
解决办法
1万
查看次数

使用jquery提交表单后调用函数

我正在尝试在提交具有如下所示类的任何表单后调用函数。但是,这似乎对我不起作用(表单提交,但提交按钮保持活动状态并且未显示加载图像)。

$(document).ready(function() {
    $('.uniForm').submit(function() {
      $('#loadingImage').show();
      $(':submit',this).attr('disabled','disabled');
      return true;
    });
});
Run Code Online (Sandbox Code Playgroud)

这是一些HTML:

<form class="uniForm" id="formABC">
//...form.... here
</form>

<img src="loadimage.gif" style="display: none;" id="loadingImage">
Run Code Online (Sandbox Code Playgroud)

有没有人看到这会阻止事情正常工作的内在错误?

我有一种感觉,它只是没有被正确调用。我可以通过这样的 HTML 自己调用它吗?

<button type="button" class="primaryAction" alt="Submit Form" onclick="$('#formABC').submit();">Submit Form</button>
Run Code Online (Sandbox Code Playgroud)

forms jquery

3
推荐指数
1
解决办法
3万
查看次数

连接两个表,然后按日期排序,但合并两个表

好吧,我想弄清楚为什么我不明白如何做好...

我有两个表:

  • 发票

    • ID
    • 用户身份
    • 数量
    • 日期
  • 付款

    • ID
    • 用户身份
    • 数量
    • 日期

因此,这里的目标是连接两个表,其中用户 ID 匹配我想要的任何内容 - 然后返回按日期排序的所有内容(最近在顶部)。但是,因为每个表中都有一个日期字段,所以我不确定 MySQL 将如何处理事情......会自动按两个日期排序吗?这就是我的想法......

"SELECT DISTINCT *
            FROM invoices,payments
            WHERE {$userID} = invoice.userID
            OR {$userID} = payments.userID
            ORDER BY date DESC";
Run Code Online (Sandbox Code Playgroud)

但是,我开始明白,也许这甚至不是 join 命令的正确用法……也许我只需要单独获取每个表上的所有数据,然后尝试用 PHP 以某种方式对其进行排序?如果这是更好的方法,那么在保持所有行数据完整的同时进行这种类型的 DATE 排序的好方法是什么?

我应该补充一点,unix 时间戳中的 TIME(这就是“日期”的存储方式)不可忽略——它应该按日期和时间排序。

谢谢大家...

php mysql sql-order-by

2
推荐指数
1
解决办法
6586
查看次数