Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- // Добавление автора кейса через ник
- if(preg_match('/@[^\'\"=\s]{1,}/ismu', $telega["message"]["text"], $nickname)){
- // Проверяем режим
- $st = $pdo->prepare(' SELECT `umod` FROM `mode` WHERE `tgid`=:tgid ');
- $st->bindParam(':tgid', $telega["message"]["from"]["id"]);
- $st->execute();
- $mod = $st->fetchAll();
- echo '<pre>mod '; var_dump($mod); echo '</pre>';
- // Проверяем добавлены ли темы
- $st = $pdo->prepare(' SELECT `themes` FROM `adding` WHERE `tgid`=:tgid ');
- $st->bindParam(':tgid', $telega["message"]["from"]["id"]);
- $st->execute();
- $themes = $st->fetchAll();
- echo '<pre>themes '; var_dump($themes); echo '</pre>';
- //Проверяем ник
- echo '<pre>ник '; var_dump($nickname); echo '</pre>';
- // Если площадки ещё не добавлены - сообщаем и не даём работать дальше
- if(!isset($themes[0]['themes']) || empty($themes[0]['themes'])){
- $bot->sendMessage($telega["message"]["chat"]["id"], 'Вам нельзя добавить автора потому что у вас ещё не добавлены темы кейса. Введите их через запятую. Например: юрист, уголовный. Или: арт-терапия, песочная терапия');
- // Если всё ок и площадки добавлены
- } else {
- $b=$pdo->prepare(" UPDATE `adding` SET `author`=:author, `tgid`=:tgid");
- $b->bindParam(":author", $nickname[0]);
- $b->bindParam(":tgid", $telega["message"]["from"]["id"]);
- $b->execute();
- // Сбросим снова режим с добавление на обычный
- $b=$pdo->prepare(" UPDATE `mode` SET `umod`='norm' WHERE `tgid`=:tgid");
- $b->bindParam(":tgid",$telega["message"]["from"]["id"]);
- $b->execute();
- // Тут пошло перемещение данных
- // Выбираем все данные из таблицы adding
- $st = $pdo->prepare(' SELECT `id`,`tgid`,`tgnickmane`,`link`,`placement`,`themes`,`author` FROM `adding` WHERE `tgid`=:tgid ');
- $st->bindParam(':tgid', $telega["message"]["from"]["id"]);
- $st->execute();
- $alldata = $st->fetchAll();
- // Выполняем основную вставку в таблицу кейсов
- $b=$pdo->prepare("INSERT INTO `cases` SET `link`=:link, `author`=:author");
- $b->bindParam(":link",$alldata[0]["link"]);
- $b->bindParam(":author",$alldata[0]["author"]);
- $insertNum = $b->execute();
- $LastId = $pdo->lastInsertId();
- echo '<pre>LastId = '; var_dump($LastId); echo '</pre>';
- echo '<pre>insertNum '; var_dump($insertNum); echo '</pre>';
- // Выполняем вставку в таблицу площадок
- $b=$pdo->prepare("INSERT INTO `placement` SET `caseid`=:caseid");
- $b->bindParam(":caseid",$LastId);
- $insertNum = $b->execute();
- $LastPlacementId = $pdo->lastInsertId();
- echo '<pre>LastPlacementId '; var_dump($LastPlacementId); echo '</pre>';
- // Разбиваем площадки
- $placements = explode(',', $alldata[0]["placement"]);
- // Обновляем колонки
- if(in_array('вк', $placements)){
- $b=$pdo->prepare(" UPDATE `placement` SET `vk`='1' WHERE `caseid`=:caseid");
- $b->bindParam(":caseid",$LastId);
- $b->execute();
- }
- if(in_array('инст', $placements)){
- $b=$pdo->prepare(" UPDATE `placement` SET `inst`='1' WHERE `caseid`=:caseid");
- $b->bindParam(":caseid",$LastId);
- $b->execute();
- }
- if(in_array('fb', $placements)){
- $b=$pdo->prepare(" UPDATE `placement` SET `fb`='1' WHERE `caseid`=:caseid");
- $b->bindParam(":caseid",$LastId);
- $b->execute();
- }
- if(in_array('tiktok', $placements)){
- $b=$pdo->prepare(" UPDATE `placement` SET `tiktok`='1' WHERE `caseid`=:caseid");
- $b->bindParam(":caseid",$LastId);
- $b->execute();
- }
- if(in_array('mytarget', $placements)){
- $b=$pdo->prepare(" UPDATE `placement` SET `mytarget`='1' WHERE `caseid`=:caseid");
- $b->bindParam(":caseid",$LastId);
- $b->execute();
- }
- if(in_array('одноклассники', $placements)){
- $b=$pdo->prepare(" UPDATE `placement` SET `okru`='1' WHERE `caseid`=:caseid");
- $b->bindParam(":caseid",$LastId);
- $b->execute();
- }
- // Подготовка тем к добавлению
- $themesList = explode(',', $alldata[0]['themes']);
- // Вставка пока в цикле
- for ($i = 0; $i < count($themesList); $i++) {
- $themesList[$i] = trim($themesList[$i]);
- $b=$pdo->prepare("INSERT INTO `themes` SET `nameru`=:nameru, `nameru_txt`=:nameru_txt");
- $b->bindParam(":nameru",$themesList[$i]);
- $b->bindParam(":nameru_txt",$themesList[$i]);
- $b->execute();
- }
- die('stop');
- // TODO вот тут нужна проверка на изменение строки потому что мало ли что
- $bot->sendMessage($telega["message"]["chat"]["id"], 'Автор успешно добавлен. Кейс отправлен на модерацию и после модерации попадёт в базу');
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement