помогите пожалуйста. вставляю запись в бд, а их сразу две залетает. почему так index.php Код (Text): <?php require_once 'config/db.php'; require_once 'core/function_db.php'; require_once 'core/function.php'; $conn = connect(); $route = $_GET['route']; // NULL! $result = execQuery('INSERT INTO info (cid, title, descr_min, description, image) VALUES(1, "как меня унизили в гик шопе", "Зашел как-то в магазин гик атрибутик", "Зашел как-то в магазин гик атриубтик", "static/images/emoji.jpg")'); switch ($route) { case NULL: $query = 'select * from info'; $result = select($query); require_once 'template/main.php'; break; case 1: echo "i равно 1"; break; case 2: echo "i равно 2"; break; // default: // echo "i не равно 0, 1 или 2"; } файл htaccess Код (Text): RewriteEngine On RewriteBase / ErrorDocument 404 /404 RewriteRule ^index\.php$ - [L] RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule ^(.*)$ /index.php?route=$1 [L] файл function_db.php Код (Text): <?php function connect(){ $conn = mysqli_connect(SERVER, USER, PASSWORD, DB); if (!$conn) { die("Connection failed: " . mysqli_connect_error()); } mysqli_set_charset($conn, "utf8"); return $conn; } function select($query) { global $conn; $queryResult = []; $result = mysqli_query($conn, $query); if (mysqli_num_rows($result) > 0) { while($row = mysqli_fetch_assoc($result)) { $queryResult[] = $row; } } return $queryResult; } function execQuery($query) { global $conn; if (mysqli_query($conn, $query)){ return true; } return false; }
кто думает - у того всегда есть мысли. 1) У вас добавление идет ВСЕГДА.... без каких либо условий, без проверок - я думаю это неправильно 2) После добавления записи в БД обычно делают редирект на какую-либо страницу что исключает повторную отправку результата
Тут мысль одна. Или используй вменяемый роутинг. Или отложи пока использование ед. точки входа. Вставка по GET, ну-ну. Радуйся, что два, а не 122, хотя еще не вечер. --- Добавлено --- Фронт с простым роутингом на основе БД – см. концовку этой статьи и комменты к ней – специально для вас подписка на 5 лет за 10 руб. --- Добавлено --- Только не используй «роут» со слагом "favicon.ico" Ограничься для начала показанным в качестве примера "page", чтобы «заработал» такой адрес: /page
главное чтобы мысли были правильными, а они правильные, когда знаешь. посмотрю как делать редирект, спасибо! --- Добавлено --- я начинающий, хорошо попробуем роутинг. спасибо --- Добавлено --- одного не пойму, почему когда другие загружают мои файлы у них все нормально работает....
Что-то не пойму, в htaccess две переадресации идет? Сперва на index, а потом на этот же index, но с get параметром? Может в этом проблема?
я начинающий, --- Добавлено --- да кто его знает, я просто скопировал файл, так надо было, долго объяснять... может и две переадресации, в общем сейчас разбираюсь
И что? Документацию из одной странички не осилишь? Или 10 руб. нет? --- Добавлено --- Хде? Первое правило – это хрень в стиле WP. Второе – в стиле ТСа (шучу) Рерайт пути в GET-параметр – отстой и уже раритет --- Добавлено --- P.S. «RewriteBase /» с вед. слешем в подстановке правила (/index.php?route=$1) обычно не используются вместе.
Ну а это хрень в стиле laravel и прекрасно работает. Если не можете дать нормальный совет нечего вообще что-то писать. Тут товарища adsoft хватает, несет какую-то чушь постоянно. Код (Text): RewriteCond %{REQUEST_FILENAME} !-d RewriteCond %{REQUEST_FILENAME} !-f RewriteRule ^ index.php [L]
Если не можете или не хотите понять мои посты, продолжайте набивать свои, не вмешивая в это грязное дело меня. Мы тут что-нибудь кроме банальных или сильно сомнительных утверждений услышим от вас? Или думали, после слова «чушь» в отношении чужих слов сразу сойдете за умного? Здесь такое не прокатит. Это не форум сеошников и т.п.