Есть парочка переменных которые надо поместить в таблицу в БД.
Но только перед этим надо проверить, если такие значения уже имеются в БД, то их нужно просто обновить, а если же таковых там нет, то просто вставить их туда.
Так вот, как же сделать эту проверку?
Я так понимаю надо делать запрос в базу данных через SELECT, и уже по имеющемуся результату ориентироваться и производить дальнейшие действия.
Только вот почему-то не получается через select. Запрос выполняется, делаю проверку есть ли таковая переменная (или же равняется ли она FALSE/TRUE), но какие бы проверки я ни ставил всё равно выполняется просто INSERT
Вот собственно код:
<?php
$mq = mysql_connect("localhost", "user", "pass");
mysql_select_db("name_db");
$str = "username=vasya; userpass=1234; age=34";
$ex = explode("; ", $str);
foreach ($ex as $exp) {
$expl = explode("=", $exp);
if ($expl[0]=="username") { $username = $expl[1];}
if ($expl[0]=="userpass") { $userpass = $expl[1];}
if ($expl[0]=="age") { $age = $expl[1];}
}
$sql = "SELECT username FROM `name_db` WHERE username='$username'";
$result = mysql_query($sql);
for ($data=array(); $row = mysql_fetch_assoc($result); $data[]=$row);
if (!isset($data['username'])){
$sql_i = "INSERT INTO `name_db` VALUES ('$username', '$userpass', '$age')";
$result_i = mysql_query($sql_i);
} else {
$sql_u = "UPDATE `name_db` SET userpass='$userpass', age='$age' WHERE username='$username'";
$result_u = mysql_query($sql_u);
}
?>