Medoo - Обновление строки таблицы, соответствующей нескольким полям

0

Я использую Medoo. приведенное ниже обновление отлично работает с совпадением одного поля. Я хочу обновлять данные, если они совпадают с clientId и businessCity.

$database->update("clientInfo", array(
     "businessName" => $_POST['businessName'],
     "contactName" => $_POST['contactName'],
     "businessEmail" => $_POST['businessEmail'],
     "businessPhone" => $_POST['businessPhone'],
     "businessWebsite" => $_POST['businessWebsite'],
     "businessAddress" => $_POST['businessAddress'],
     "businessAddress2" => $_POST['businessAddress2'],
     "businessCity" => $_POST['businessCity'],
     "businessState" => $_POST['businessState'],
     "businessZip" => $_POST['businessZip']
), array(
    "clientId" => $_POST['clientId'],
    "businessCity" => $_POST['businessCity'],
));

Я так пробовал. но не работает для меня.

Теги:
medoo

3 ответа

1

Читайте об условиях относительности из документации Medoo: http://medoo.in/api/where

Просто добавьте соединитель AND к каждому значению.

$database->update("clientInfo", array(
     "businessName" => $_POST['businessName'],
     "contactName" => $_POST['contactName'],
     "businessEmail" => $_POST['businessEmail'],
     "businessPhone" => $_POST['businessPhone'],
     "businessWebsite" => $_POST['businessWebsite'],
     "businessAddress" => $_POST['businessAddress'],
     "businessAddress2" => $_POST['businessAddress2'],
     "businessCity" => $_POST['businessCity'],
     "businessState" => $_POST['businessState'],
     "businessZip" => $_POST['businessZip']
), array(
    'AND' => array(
        "clientId" => $_POST['clientId'],
        "businessCity" => $_POST['businessCity'],
    )
));
1

echo $database->last_query();

используйте эту функцию, чтобы проверить SQL-запрос, выполненный для отладки.

0

Пример:

$datas = $db->update( "meta" , ["metalabel"=>$label[0][0]], ["AND"=>["metakey"=>"Collection", "metavalue"=>$_POST["metavalue"]] ]  );

вы должны установить массив с логическим оператором (AND или OR), и в качестве первого значения этого параметра вы должны установить другой массив... см. мой пример выше

Ещё вопросы

Сообщество Overcoder
Наверх
Меню