Skip to content

Instantly share code, notes, and snippets.

@AndryWJ
Last active January 18, 2019 11:04
Show Gist options
  • Save AndryWJ/7ea66e57ba5da66ae0554789362eae11 to your computer and use it in GitHub Desktop.
Save AndryWJ/7ea66e57ba5da66ae0554789362eae11 to your computer and use it in GitHub Desktop.
php: wpdb, PDO, SELECT,INSERT,UPDATE,DELETE CREATE
// WPDB snipets
global $wpdb;
// SELECT выборка самых свежих записей
$var = 'CONFIRMED';
$sql = $wpdb->prepare( "SELECT `status`,`order_id`, timestamp( `timestamp` ) as 'timestamp_column'
FROM `payments`
WHERE `status` = 'CONFIRMED'
ORDER BY `timestamp_column` DESC", $var);
$wpdb->get_results($sql, ARRAY_A);
// INSERT вставка c prepare
$wpdb->query(
$wpdb->prepare(
"INSERT INTO `table_name` ( post_id, meta_key, meta_value ) VALUES ( %d, %s, %s ), ('10','meta_keyVal','meta_valueVal')",
array(
10,
$metakey,
$metavalue
)
)
);
// UPDATE обновление
$quer = $wpdb->query("
UPDATE `table_name`
SET `col_name` ='value'
WHERE `id` = '1'
");
// DELETE удаление рядов
$quer = $wpdb->query("
DELETE FROM `table_name`
WHERE id = '1'
");
// CREATE TABLE создание таблицы
$quer = $wpdb->query("
CREATE TABLE MyGuests (
id INT(6) UNSIGNED AUTO_INCREMENT PRIMARY KEY,
firstname VARCHAR(30) NOT NULL,
lastname VARCHAR(30) NOT NULL,
email VARCHAR(50),
reg_date TIMESTAMP
)
");
// DROP TABLE удаление таблицы
$quer = $wpdb->query("
DROP TABLE Suppliers;
");
// PDO use
function getConnection($username,$password,$host,$db)
{
try {
$connection = new PDO("mysql:dbname=$db;host=$host", $username, $password, array(PDO::MYSQL_ATTR_INIT_COMMAND => "SET NAMES utf8"));
$connection->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
return $connection;
} catch (PDOException $e) {
return 'Подключение не удалось: ' . $e->getMessage();
}
}
$conn = getConnection();
$sql = "SELECT `id_user`,`Email` FROM `payments` WHERE `id` = :id";
$stmt = $conn->prepare($sql);
$stmt->bindParam(':id', $var, PDO::PARAM_STR);
$stmt->execute();
// Извлечение
$allRow = $stmt->fetchAll(PDO::FETCH_ASSOC);
$var = "1";
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment