Как проверить строку, если значение существует php mysql - PullRequest
0 голосов
/ 11 октября 2018

Итак, при первом запуске выходных данных были данные, добавленные во второй раз, когда выходные данные были данными, как, если я изменил значение на 888 и 999, но все равно вставил в таблицу?потому что в будущем значение вернется к 123 и 456. спасибо, и я ценю, если кто-нибудь исправит мой вопрос

<?php 
$conn = mysqli_connect('localhost', 'root', '', 'database') or die('Error connecting to MySQL server');

$check=mysqli_query($conn,"SELECT col1, col2 FROM mytable");
$checkrows=mysqli_num_rows($check);

if ($checkrows > 0) 
{
    echo "<br>data exists";
}
else
{  
  $sql = "INSERT INTO mytable (`col1`, `col2`) VALUES ('123', '456')";
  $conn->query($sql);
  echo "<br>data added";
}
?>

Ответы [ 2 ]

0 голосов
/ 11 октября 2018

Если вы добавили 123 и 456 в первый раз, а теперь хотите добавить 888 и 999, выполните следующие действия.

<?php 
$col1 = 888;
$col2 = 999;

$conn = mysqli_connect( 'localhost', 'root', '', 'database') or die('Error connecting to MySQL server' );
$sql_query = " SELECT col1, col2 FROM mytable where ( col1 = $col1 and col2 = $col2 )"
$check = mysqli_query( $conn, $sql_query );

$checkrows = mysqli_num_rows( $check );

if ( $checkrows > 0 ) {

    echo "<br>data exists";

} else {

    $sql = " INSERT INTO mytable ( `col1`, `col2` ) VALUES ( $col1, $col2 )";
    mysqli_query($conn, $sql );
    echo "<br> data added ";
}
?>
0 голосов
/ 11 октября 2018

В переменной $ check, где вы делаете запрос, тоже смотрите, если данные уже записаны, вы пропускаете элемент WHERE, после FROM моей таблицы вам нужно добавить WHERE col1 = '888' AND col2 = '999 '

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...