2012-01-18 53 views
0

我正在做两个变量,$ row2的值为7和$ row3的值为11的计数验证。我想要什么达到的是更高的值只能插入到数据库中。现在的问题是$ row3的值比$ row2大。但是它总是将$ row2值插入到数据库中。我的验证码有问题吗?比较两个变量使用IF/IF..ELSE语句的PHP和插入到MYSQL

function tweetCount($hashtag) { 

$url = 'http://search.twitter.com/search.atom?q='.urlencode($hashtag).'&rpp=100&result_type=recent'; 

//echo "<p>Connecting to <strong>$url</strong> ...</p>"; 
$ch = curl_init($url); 
curl_setopt ($ch, CURLOPT_RETURNTRANSFER, TRUE); 
$xml = curl_exec ($ch); 
curl_close ($ch); 

//If you want to see the response from Twitter, uncomment this next part out: 
//echo "<p>Response:</p>"; 
//echo "<pre>".htmlspecialchars($xml)."</pre>"; 

$affected = 0; 
$twelement = new SimpleXMLElement($xml); 
foreach ($twelement->entry as $entry) { 
    $text = trim($entry->title); 
    $author = trim($entry->author->name); 
    $time = strtotime($entry->published); 
    $id = $entry->id; 

    //echo count($entry->text); 
    // echo "<em>Posted ".date('n/j/y g:i a',$time)."</em><p>Tweet from <b><u>".$author."</u></b>: <strong>".$text."</strong> </p>"; 
    //echo "<br/>"; 
} 
    //echo count($twelemtnt); 
    //echo count($entry); 
    echo $number_of_tweets = count($twelement->entry); 
} 

在我的HTML表格,我赞同出来的数据是这样的:

<?php echo tweetCount($row[2]); ?> 

    <input type="hidden" name="row2" value="<?php echo tweetCount($row2[2]);?>" /> 
    <input type="hidden" name="row2Ini" value="<?php echo $row2[1];?>" /> 
    <input type="hidden" name="row2Sch" value="<?php echo $row2[2];?>" /> 

使用POST形式,我把它张贴到另一个网页,我需要做一个计数验证,看看哪个变量$ 2行或$ ROW3有较高的计数值,然后我将插入更高的价值为DB

admin.php的网页

$row2 = $_POST['row2']; 
$row2Ini = $_POST['row2Ini']; 
$row2Sch = $_POST['row2Sch']; 


if ($row2 > $row3) 
{ 
    echo "<br>row2 is more than row 3"; 
    $con = mysql_connect("localhost","root","password"); 
      if (!$con) 
       { die('Could not connect: ' . mysql_error());} 
      mysql_select_db("schoutweet", $con); 
      $sql2="INSERT INTO matchTable (schInitial, schName,position)VALUES 
      ('$_POST[row2Ini]','$_POST[row2Sch]','top4')"; 
      if (!mysql_query($sql2,$con)){die('Error: ' . mysql_error());}echo "ROW2 record added!<BR>"; 
      mysql_close($con); 
} 
else if ($row2 < $row3) 
{ 
    echo "row3 count is more than row 2"; 
    $con = mysql_connect("localhost","root","password"); 
      if (!$con) 
       { die('Could not connect: ' . mysql_error());} 
      mysql_select_db("schoutweet", $con); 
    $sql="INSERT INTO matchTable (schInitial, schName,position)VALUES('$_POST[row3Ini]','$_POST[row3Sch]','top4')"; 
      if (!mysql_query($sql,$con)){die('Error: ' . mysql_error());}echo "ROW3 record added!<BR>"; 
      mysql_close($con); 
} 
+0

你觉得哪个块正在执行? – Jivings 2012-01-18 15:03:16

+0

顺便说一句,除非你真的不想在这种情况下插入任何东西,否则不要忘记说明它们是平等的情况。 – 2012-01-18 15:03:49

+1

您确定$ row2和$ row3是数字吗?因为如果他们是字符串'7'大于'11'并且全部是正确的。 – dfsq 2012-01-18 15:05:06

回答

1

不要写连接两次......你应该把连接部分出if..else语句的...

检查以下,如果它的工作原理...

$con = mysql_connect("localhost","root","password"); 
     if (!$con) 
      { die('Could not connect: ' . mysql_error());} 
     mysql_select_db("schoutweet", $con); 


if ($row2 > $row3) 
{ 
echo "<br>row2 is more than row 3"; 
     $sql2="INSERT INTO matchTable (schInitial, schName,position)VALUES 
     ('$_POST[row2Ini]','$_POST[row2Sch]','top4')"; 
     if (!mysql_query($sql2,$con)){die('Error: ' . mysql_error());}echo "ROW2 record added!<BR>"; 

} 
else 
{ 
    $sql="INSERT INTO matchTable (schInitial, schName,position)VALUES('$_POST[row3Ini]','$_POST[row3Sch]','top4')"; 
      if (!mysql_query($sql,$con)){die('Error: ' . mysql_error());}echo "ROW3 record added!<BR>"; 

} 
      mysql_close($con);