Одобряване през админ панела

niki_noki

Registered
Здравейте..

Имам код с който добавян информация..


Как мога да го направя преди да се изведе в сайта да трябва да бъде одобрен от амдмин-а в админ панела :)
 
Направи ново поле в базата данни където полето по подразбиране да е 0. После правиш проверка в страницата за извеждане ако е 0 да не се извежда. След това си правиш кода в админ панела да преглеждаш неодобрени т.е. полетата с 0. При натискане на бутон да прави ъпдейт в базата и полето да става 1 и съответно в страницата с извеждане да извежда тези с 1 в това поле. Дай кода си от админ и от страницата за извеждане да наместим заявките.
 
djpatzo каза:
Направи ново поле в базата данни където полето по подразбиране да е 0. После правиш проверка в страницата за извеждане ако е 0 да не се извежда. След това си правиш кода в админ панела да преглеждаш неодобрени т.е. полетата с 0. При натискане на бутон да прави ъпдейт в базата и полето да става 1 и съответно в страницата с извеждане да извежда тези с 1 в това поле. Дай кода си от админ и от страницата за извеждане да наместим заявките.


За извеждането когато е активо така ли трябва да стане?

Код:
$query=mysql_query("SELECT * FROM `table` WHERE `user` AND active='yes' LIKE '%$search%' or `info` LIKE '%$search%'") or die(mysql_error());
:idea:
 
да но в базата данни трябва тогава да записваш с yes, no иначе си на прав път. После в админ панела същата заявка само че active='no' за да изведеш неактивните.
 
Еми примерно имам информация която е запазена в бд под името

"WEB-TOURIST" с аctive NO

и

"WEB-TOURIST.NET" с аctive YES
..

И когато в търсачката напиша примерно WEB , излиза WEB-TOURIST, а трябва само WEB-TOURIST.NET
 
Тази заявка ли използваш ?
Код:
$query=mysql_query("SELECT * FROM `table` WHERE `user` AND active='yes' LIKE '%$search%' or `info` LIKE '%$search%'") or die(mysql_error());
Защо си написал WHERE `user` AND не трябва ли LIKE да е след него ?
 
niki_noki каза:
Да тая заявка ползвам..

Дай правилната :)
Не съм казал, че е грешна просто на мен ми се струва малко нелогична. Я пробвай така:
Код:
$query=mysql_query("SELECT * FROM `table` WHERE `user` LIKE '%$search%' or `info` LIKE '%$search%' AND active='yes'") or die(mysql_error());
 
Здравей приятел,

най добрия варянт е да си направиш едно поле в таблицата

active по подразбиране no

и когато потребителя добави това където искаш да го одобриш ще е no

и ще направиш една подобна проверка

$sql = mysql_query('SELECT * FROM `table`');
while($row = mysql_fetch_assoc($sql))
{
if($row['active']=="no")
{
// Да ти показва резултатите за одобрение
}
else
{
echo 'Няма файлове за одобрение!';
}
}


и после си правиш един файл примерно odobri.php

и в него има следното

$id = (int)$_GET['id'];
$yes = 'yes';
$sql = mysql_query('UPDATE `table`SET active="'.$yes.'" WHERE id='.$id.'');

echo 'Файла е успешно одобрен';

И там кадето искаш да изкарваш одобрените резултати правиш тази проверка
$sql = mysql_query('SELECT * FROM `table`');
while($row = mysql_fetch_assoc($sql))
{
if($row['active']=="yes")
{
// Показва ти одобрените
}
else
{
echo 'Няма одобрени плъгини';
}
}

Това е само пример надявам се да си схванал ако има проблеми пиши!
 
Добре това за изкарването ама като изкарва всички с active = yes

и най отгоре седи Няма одобрени
 
Ами пробвай така
$sql = mysql_query('SELECT * FROM `table`');
while($row = mysql_fetch_assoc($sql))
{
if($row['active']=="yes")
{
// Показва ти одобрените
}
if($row['active']=="no")
{
echo 'Няма одобрени файлове!';
}
 
Направи си файл odobreni.php и вътре нещо подобно.
Код:
<?php
$q = mysql_query("SELECT * FROM `table` WHERE active='yes'") or die(mysql_error());

while($row = mysql_fetch_array($q) {
// ТУК ЩЕ ТИ ИЗВЕДЕ ОДОБРЕНИТЕ ФАЙЛОВЕ
echo $row['file'].'<br>';
}
?>

После си правиш файл neodobreni.php
Код:
<?php
$q = mysql_query("SELECT * FROM `table` WHERE active='no'") or die(mysql_error());

while($row = mysql_fetch_array($q) {
// ТУК ЩЕ ТИ ИЗВЕДЕ НЕОДОБРЕНИТЕ ФАЙЛОВЕ
echo $row['file'].'<br>';
}
?>

Идеята тук е да си разделиш в 2 различни страници кода за одобрени и неодобрени. Да не излизат на една страница.
 
Значи ето ти само за активните....
Код:
$query=mysql_query("SELECT * FROM `table` WHERE active='yes' AND `info` LIKE '%$search%'") or die(mysql_error());

Това ти търси активните и търси стринг в поле `info`

EDIT: Значи за да ти стане номера с търсенето задължително трябва да имаш пояснено поле и тогава LIKE стринга от полето, който търсиш. Иначе само с полето без описание какво от него няма да стане.. Ако е така ще ти изведе всичко от info което е активно.
 
baso, така ще избъгяса, не четох какви са точно коментарите на пичовете над мен но мога да ти обясня накратко.

Правиш допълнително поле в db под име accept или както си искаш, и дифолт да е no. В админ панела където трябва да се удобряват ги извеждаш с тази заявка (в цикъл ест.)
SELECT * FROM `дърабъра` WHERE accept='no'
и отдолу 1 бутонче одобри и му даваш, когато се кликне да изпълнява следната заявка:
UPDATE `дърабъра` SET accept='yes' WHERE id='ид-то от там където обхождаш масива дет ти казвах'
вече удобрените ги извеждаш нали пак с mysql_fetch_assoc/array, заявката ще стане следната:
SELECT * FROM `дърабъра` WHERE accept='yes'
 

Back
Горе