My "topics" table contains 10 entires
*--------------*
topicid topic
------
*--------------*
01 Bye
02 Hi
03 Hello
.....
10 Morning
*--------------*
<?php //topics.php
require_once("includes/connection.php");
....
....
ttopics[]= //I have 10 strings here which have changed by now.
foreach ($ttopics as $ttkey)
{
//I am trying to update my "topics" table whenever these strings change, based on the topicid (primary key).
//Please correct my code.
$id = mysql_real_escape_string('topicid');
$topic = mysql_real_escape_string('topic');
$result = mysql_query("SELECT topicid, topic FROM table WHERE topicid='{$id}' and topic='{$topic}' ");
if($result)
{
$num = mysql_num_rows( $result );
if ($num == 0)
{
$querypost = mysql_query ("INSERT INTO trendingtopics (topic) VALUES ('$ttkey')");
}
}
I am getting an error. Lets say the position of Morning is first and Bye is last. It should update the database accordingly. If there is a new entry, say "phpfreaks" in first position. It should update according.
db entry based on primary key
Moderator: General Moderators
-
oneofthelions
- Forum Newbie
- Posts: 14
- Joined: Tue Oct 27, 2009 2:41 am
-
oneofthelions
- Forum Newbie
- Posts: 14
- Joined: Tue Oct 27, 2009 2:41 am
Re: db entry based on primary key
current table hard coded entry
topicid ------topic
---------------------
1-------------a
2 -------------b
..
..
10 -------------j
//I have to update this table with strings present in $ttkey
<?php
...
foreach ($ttopics as $ttkey=>$topic){ ttkey has the topics (10 strings). These need to be updated instead of a,b ...j
$result = mysql_query("SELECT topicid, topic FROM table WHERE topicid='{$ttkey}'");
if($result)
{
$num = mysql_num_rows( $result );
if ($num == 0)
{
$querypost = mysql_query ("INSERT INTO trendingtopics VALUES ('$ttkey', '$topic')");
}
else{
$row = mysql_fetch_array($result);
if($row['topic']!=$topic)
$querypost = mysql_query ("UPDATE trendingtopics SET topic = '$topic' WHERE topicid='$ttkey'");
}
<?
There is something wrong in my syntax. Please help
topicid ------topic
---------------------
1-------------a
2 -------------b
..
..
10 -------------j
//I have to update this table with strings present in $ttkey
<?php
...
foreach ($ttopics as $ttkey=>$topic){ ttkey has the topics (10 strings). These need to be updated instead of a,b ...j
$result = mysql_query("SELECT topicid, topic FROM table WHERE topicid='{$ttkey}'");
if($result)
{
$num = mysql_num_rows( $result );
if ($num == 0)
{
$querypost = mysql_query ("INSERT INTO trendingtopics VALUES ('$ttkey', '$topic')");
}
else{
$row = mysql_fetch_array($result);
if($row['topic']!=$topic)
$querypost = mysql_query ("UPDATE trendingtopics SET topic = '$topic' WHERE topicid='$ttkey'");
}
<?
There is something wrong in my syntax. Please help