如何在PHP中将字符串转换为整数?

时间:2012-03-06 06:58:49

标签: php

我希望使用insert类数据将update / csv数据放入MySQL表中:

function execInsertOrUpdateCompteRendu($compterendu)  // here $compterendu is something like this : -1;2012/03/06 09h 50mn;3;1; 
{
        $resultat = explode("\n",$compterendu);
        $connec = mysql_connect("192.168.1.123:3306","root", "mysqlroot");
        mysql_set_charset('utf8', $connec);
        mysql_select_db("finance",$connec);
        for($i = 0; $i < count($resultat) ; $i++)
        {
            $valeur=explode(";",$resultat[$i]);
            if ($valeur[0] > 0)
            {
                $requete = mysql_query("UPDATE compte_rendu SET  
                cr_date    = '".convertFromDateHM($valeur[1])."',
                cr_lieu    = '".$valeur[2]."',
                cred_id    = '".$valeur[3]."',
                cr_resultat = '".$valeur[5]."',
                cr_comment = '".$valeur[6]."',
                adc_id = '".$valeur[7]."' 
                WHERE cr_id = '".$valeur[0]."'");
            }
            else
            {
                $requete = mysql_query("INSERT INTO compte_rendu SET 
                                        cred_id = '".$valeur[3]."',
                                        cr_date = '".convertFromDateHM($valeur[1])."',
                                        cr_lieu = '".$valeur[2]."',
                                        cr_resultat = '".$valeur[5]."',
                                        cr_comment = '".$valeur[6]."',
                                        adc_id = '".$valeur[7]."'");
            }
        }
        return $resultat[0];
}

PHP代码是web-service我从J2ME客户端调用的代码。问题是当我运行J2ME应用程序时,表中没有插入新数据!我调试了java程序,那里没有错误。那我的PHP代码有什么问题?

2 个答案:

答案 0 :(得分:1)

使用MySQLi预处理语句。然后,您可以将参数绑定为整数,双精度,字符串或blob。阅读Mysqli Manual以及关于约束bind_param部分的内容。

关于您的查询:您不必将整数值包装在引号

答案 1 :(得分:0)

首先,您可以尝试使用mysql_real_escape_string转发您输入数据库的所有文字 - 否则您可能会出现问题。 e.g。

//cr_lieu    = '".mysql_real_escape_string($valeur[2])."',

另外 - 将字符串转换为整数?

$int = (int)$string;