Zablokowanie edycji newsa
|
dhorodys |
Dodany dnia 10.05.2007 21:07:17
|
Przedszkolak
Postów: 50
Data rejestracji: 03.05.2007 21:43
|
Witam.Czy da rade jakos administratorowi zablokowac edycje jednego tylko konkretnego newsa? Wszystkie newsy zeby mogl edytowac.Tylko jeden wybrany chcialem dla administratora zablokowac. ?? |
|
|
|
Wścibski Gość |
Dodany dnia 24.11.2024 19:32:57
|
Pan Kontekstualny
Postów: n^x
Data rejestracji: Zawsze
|
|
IP: localhost |
|
|
wlodekp |
Dodany dnia 11.05.2007 07:07:06
|
Weteran
Postów: 3101 Pomógł: 29
Data rejestracji: 21.05.2005 22:27
|
dodanie wpisu:
if ($data['news_id'] == 4) $news_id='ZAKAZ';
w sekcji: if (isset($_POST['edit'])) {.........
} nie pozwoli zapisać poprawek edycji newsa o id=4 przeniesie do głównej użycie if superadmin i else może dać oczekiwany efekt
|
|
|
|
dhorodys |
Dodany dnia 11.05.2007 13:48:46
|
Przedszkolak
Postów: 50
Data rejestracji: 03.05.2007 21:43
|
cos nie bardzo mi to wylazi jak daje tak:
if (isset($_POST['edit'])) {if ($data['news_id'] == 4) $news_id='ZAKAZ';
}
to sie nic nie dzieje ale jak daje tak:
if (isset($_POST['edit'])) {if ($data['news_id']=4) $news_id='ZAKAZ';
}
to blokuje edycje wszystkich newsow cos probowalem z tym superadmin ale cos mi nie wychodzilo.
Napisz jak dokladnie dac zeby newsa powiedzmy o id 4 zablokowac dla edycja dla admina a zeby edycja byla dostepna dla mnie super admina . Ja jako super admin mam id 1 a ten admin ma id 3 |
|
|
|
wlodekp |
Dodany dnia 11.05.2007 14:00:41
|
Weteran
Postów: 3101 Pomógł: 29
Data rejestracji: 21.05.2005 22:27
|
if (isset($_POST['edit'])) {
$result = dbquery("SELECT * FROM ".$db_prefix."news WHERE news_id='$news_id'");
if (dbrows($result) != 0) {
$data = dbarray($result);
$news_subject = $data['news_subject'];
$news_cat = $data['news_cat'];
$body = phpentities(stripslashes($data['news_news']));
$body2 = phpentities(stripslashes($data['news_extended']));
if ($data['news_start'] > 0) $news_start = getdate($data['news_start']);
if ($data['news_end'] > 0) $news_end = getdate($data['news_end']);
$news_breaks = $data['news_breaks'] == "y" ? " checked" : "";
$news_comments = $data['news_allow_comments'] == "1" ? " checked" : "";
$news_ratings = $data['news_allow_ratings'] == "1" ? " checked" : "";
$news_visibility = $data['news_visibility'];
$news_sticky = $data['news_sticky'] == "1" ? " checked" : "";
if ($data['news_id'] == 4) $news_id='ZAKAZ';
}
ta czerwona wstawka blokuje zapis edycji i tutaj naleźy uźyć dwóch członów normalnie dla administratora z blokadą i if(iSUPERADMIN) bez blokady z użyciem else!
|
|
|
|
dhorodys |
Dodany dnia 11.05.2007 14:39:24
|
Przedszkolak
Postów: 50
Data rejestracji: 03.05.2007 21:43
|
Ok dzieki dziala. Temat mozna zamknac. |
|
|
|
wlodekp |
Dodany dnia 11.05.2007 14:55:45
|
Weteran
Postów: 3101 Pomógł: 29
Data rejestracji: 21.05.2005 22:27
|
if (isset($_POST['edit'])) {
$result = dbquery("SELECT * FROM ".$db_prefix."news WHERE news_id='$news_id'");
if (dbrows($result) != 0) {
$data = dbarray($result);
$news_subject = $data['news_subject'];
$news_cat = $data['news_cat'];
$body = phpentities(stripslashes($data['news_news']));
$body2 = phpentities(stripslashes($data['news_extended']));
if ($data['news_start'] > 0) $news_start = getdate($data['news_start']);
if ($data['news_end'] > 0) $news_end = getdate($data['news_end']);
$news_breaks = $data['news_breaks'] == "y" ? " checked" : "";
$news_comments = $data['news_allow_comments'] == "1" ? " checked" : "";
$news_ratings = $data['news_allow_ratings'] == "1" ? " checked" : "";
$news_visibility = $data['news_visibility'];
$news_sticky = $data['news_sticky'] == "1" ? " checked" : "";
if ($data['news_id'] == 4) $news_id='ZAKAZ';
if (iSUPERADMIN){
if ($data['news_id'] == 4) $news_id='4';
}
}
}
W podzięce za switha.
DOPISANE W EDYCJI
jeszcze krócej to w pracy i na szybko tak powinno być:
if (isset($_POST['edit'])) {
$result = dbquery("SELECT * FROM ".$db_prefix."news WHERE news_id='$news_id'");
if (dbrows($result) != 0) {
$data = dbarray($result);
$news_subject = $data['news_subject'];
$news_cat = $data['news_cat'];
$body = phpentities(stripslashes($data['news_news']));
$body2 = phpentities(stripslashes($data['news_extended']));
if ($data['news_start'] > 0) $news_start = getdate($data['news_start']);
if ($data['news_end'] > 0) $news_end = getdate($data['news_end']);
$news_breaks = $data['news_breaks'] == "y" ? " checked" : "";
$news_comments = $data['news_allow_comments'] == "1" ? " checked" : "";
$news_ratings = $data['news_allow_ratings'] == "1" ? " checked" : "";
$news_visibility = $data['news_visibility'];
$news_sticky = $data['news_sticky'] == "1" ? " checked" : "";
if (!iSUPERADMIN){
if ($data['news_id'] == 4) $news_id='ZAKAZ';
}
}
}
Edytowane przez wlodekp dnia 11.05.2007 15:36:40
|
|
|
|
dhorodys |
Dodany dnia 11.05.2007 15:03:57
|
Przedszkolak
Postów: 50
Data rejestracji: 03.05.2007 21:43
|
Ok thanks teraz jeszcze lepiej |
|
|
|
hellcore |
Dodany dnia 14.01.2009 10:34:48
|
Przedszkolak
Postów: 6
Data rejestracji: 09.01.2009 23:13
|
Witam, tak wygląda mój plik news.php nie mogę znaleźć linijek podanych powyżej do edycji. Możecie powiedzieć co robię źle, może mam zły plik ? a i jak się da to chciałbym żeby newsy mógł edytować tylko superadmin.
<?php
/*---------------------------------------------------+
| PHP-Fusion 6 Content Management System
+----------------------------------------------------+
| Copyright © 2002 - 2006 Nick Jones
| http://www.php-fu...
+----------------------------------------------------+
| Released under the terms & conditions of v2 of the
| GNU General Public License. For details refer to
| the included gpl.txt file or visit http://gnu.org
+----------------------------------------------------*/
require_once "maincore.php";
require_once "subheader.php";
require_once "side_left.php";
if (isset($readmore) && !isNum($readmore)) fallback(FUSION_SELF);
// Predefined variables, do not edit these values
if ($settings['news_style'] == "1") { $i = 0; $rc = 0; $ncount = 1; $ncolumn = 1; $news_[0] = ""; $news_[2] = ""; $news_[1] = ""; } else { $i = 1; }
// This number should be an odd number to keep layout tidy
$items_per_page = 11;
if (!isset($readmore)) {
$rows = dbcount("(news_id)", "news", groupaccess('news_visibility')." AND (news_start='0'||news_start<=".time().") AND (news_end='0'||news_end>=".time().")");
if (!isset($rowstart) || !isNum($rowstart)) $rowstart = 0;
if ($rows != 0) {
$result = dbquery(
"SELECT tn.*, tc.*, user_id, user_name FROM ".$db_prefix."news tn
LEFT JOIN ".$db_prefix."users tu ON tn.news_name=tu.user_id
LEFT JOIN ".$db_prefix."news_cats tc ON tn.news_cat=tc.news_cat_id
WHERE ".groupaccess('news_visibility')." AND (news_start='0'||news_start<=".time().") AND (news_end='0'||news_end>=".time().")
ORDER BY news_sticky DESC, news_datestamp DESC LIMIT $rowstart,$items_per_page"
);
$numrows = dbrows($result);
if ($settings['news_style'] == "1") $nrows = round((dbrows($result) - 1) / 2);
while ($data = dbarray($result)) {
$news_cat_image = "";
$news_subject = "<a name='news_".$data['news_id']."' id='news_".$data['news_id']."'></a>".stripslashes($data['news_subject']);
if ($data['news_cat_image']) {
$news_cat_image = "<a href='news_cats.php?cat_id=".$data['news_cat_id']."'><img src='".IMAGES_NC.$data['news_cat_image']."' alt='".$data['news_cat_name']."' align='left' style='border:0px;margin-top:3px;margin-right:5px'></a>";
} else {
$news_cat_image = "";
}
$news_news = $data['news_breaks'] == "y" ? nl2br(stripslashes($data['news_news'])) : stripslashes($data['news_news']);
$news_news = parselinks($news_news);
if ($news_cat_image != "") $news_news = $news_cat_image.$news_news;
$news_info = array(
"news_id" => $data['news_id'],
"user_id" => $data['user_id'],
"user_name" => $data['user_name'],
"news_date" => $data['news_datestamp'],
"news_ext" => $data['news_extended'] ? "y" : "n",
"news_reads" => $data['news_reads'],
"news_comments" => dbcount("(comment_id)", "comments", "comment_type='N' AND comment_item_id='".$data['news_id']."'"),
"news_allow_comments" => $data['news_allow_comments']
);
if ($settings['news_style'] == "1") {
if ($rows <= 2 || $ncount == 1) {
$news_[0] .= "<table width='100%' cellpadding='0' cellspacing='0'>\n";
$news_[0] .= "<tr>\n<td class='tbl2'><b>$news_subject</b></td>\n</tr>\n";
$news_[0] .= "<tr>\n<td class='tbl1' style='text-align:justify'>$news_news</td>\n</tr>\n";
$news_[0] .= "<tr>\n<td align='center' class='tbl2'>\n";
if (iSUPERADMIN && checkrights("Z")) $news_[0] .= "<form name='news".$news_info['news_id']."' method='post' action='".ADMIN."news.php".$aidlink."&news_id=".$news_info['news_id']."'>\n";
$news_[0] .= "<span class='small2'><img src='".THEME."images/bullet.gif' alt=''> <a href='profile.php?lookup=".$news_info['user_id']."'>".$news_info['user_name']."</a> ".$locale['041'].showdate("longdate", $news_info['news_date'])." ·\n";
if ($news_info['news_ext'] == "y" || $news_info['news_allow_comments']) {
$news_[0] .= $news_info['news_ext'] == "y" ? "<a href='".FUSION_SELF."?readmore=".$news_info['news_id']."'>".$locale['042']."</a> ·\n" : "";
$news_[0] .= $news_info['news_allow_comments'] ? "<a href='".FUSION_SELF."?readmore=".$news_info['news_id']."'>".$news_info['news_comments'].$locale['043']."</a> ·\n" : "";
$news_[0] .= $news_info['news_reads'].$locale['044']." ·\n";
}
if (iSUPERADMIN && checkrights("Z")) { $news_[0] .= " · <input type='hidden' name='edit' value='edit'><a href='javascript:document.editnews".$news_info['news_id'].".submit();'><img src='".IMAGES."edit.gif' alt='".$locale['048']."' title='".$locale['048']."' style='vertical-align:middle;border:0px;'></a></span>\n</form>\n"; } else { $news_[0] .= "</span>\n"; }
$news_[0] .= "</td>\n</tr>\n</table>\n";
if ($ncount != $rows) $news_[0] .= "<div><img src='".THEME."images/blank.gif' alt='' width='1' height='8'></div>\n";
} else {
if ($i == $nrows && $ncolumn != 2) { $ncolumn = 2; $i = 0; }
$row_color = ($rc % 2 == 0 ? "tbl2" : "tbl1");
$news_[$ncolumn] .= "<table width='100%' cellpadding='0' cellspacing='0'>\n";
$news_[$ncolumn] .= "<tr>\n<td class='tbl2'><b>$news_subject</b></td>\n</tr>\n";
$news_[$ncolumn] .= "<tr>\n<td class='tbl1' style='text-align:justify'>$news_news</td>\n</tr>\n";
$news_[$ncolumn] .= "<tr>\n<td align='center' class='tbl2'>\n";
if (iSUPERADMIN && checkrights("Z")) $news_[$ncolumn] .= "<form name='editnews".$news_info['news_id']."' method='post' action='".ADMIN."news.php".$aidlink."&news_id=".$news_info['news_id']."'>\n";
$news_[$ncolumn] .= "<span class='small2'><img src='".THEME."images/bullet.gif' alt=''> <a href='profile.php?lookup=".$news_info['user_id']."'>".$news_info['user_name']."</a> ".$locale['041'].showdate("longdate", $news_info['news_date']);
if ($news_info['news_ext'] == "y" || $news_info['news_allow_comments']) {
$news_[$ncolumn] .= "<br>\n";
$news_[$ncolumn] .= $news_info['news_ext'] == "y" ? "<a href='".FUSION_SELF."?readmore=".$news_info['news_id']."'>".$locale['042']."</a> ·\n" : "";
$news_[$ncolumn] .= $news_info['news_allow_comments'] ? "<a href='".FUSION_SELF."?readmore=".$news_info['news_id']."'>".$news_info['news_comments'].$locale['043']."</a> ·\n" : "";
$news_[$ncolumn] .= $news_info['news_reads'].$locale['044']." ·\n";
} else {
$news_[$ncolumn] .= " ·\n";
}
if (iSUPERADMIN && checkrights("Z")) { $news_[$ncolumn] .= " · <input type='hidden' name='edit' value='edit'><a href='javascript:document.editnews".$news_info['news_id'].".submit();'><img src='".IMAGES."edit.gif' alt='".$locale['048']."' title='".$locale['048']."' style='vertical-align:middle;border:0px;'></a></span>\n</form>\n"; } else { $news_[$ncolumn] .= "</span>\n"; }
$news_[$ncolumn] .= "</td>\n</tr>\n</table>\n";
if ($ncolumn == 1 && $i < ($nrows - 1)) $news_[$ncolumn] .= "<div><img src='".THEME."images/blank.gif' alt='' width='1' height='8'></div>\n";
if ($ncolumn == 2 && $i < (dbrows($result) - $nrows - 2)) $news_[$ncolumn] .= "<div><img src='".THEME."images/blank.gif' alt='' width='1' height='8'></div>\n";
$i++; $rc++;
}
$ncount++;
} else {
render_news($news_subject, $news_news, $news_info);
if ($i != $numrows) { tablebreak(); } $i++;
}
}
if ($settings['news_style'] == "1") {
opentable($locale['046']);
echo "<table cellpadding='0' cellspacing='0' style='width:100%'>\n<tr>\n<td colspan='3' style='width:100%'>\n";
echo $news_[0];
echo "</td>\n</tr>\n<tr>\n<td style='width:50%;vertical-align:top;'>\n";
echo $news_[1];
echo "</td>\n<td style='width:10px'><img src='".THEME."images/blank.gif' alt='' width='10' height='1'></td>\n<td style='width:50%;vertical-align:top;'>\n";
echo $news_[2];
echo "</td>\n</tr>\n</table>\n";
closetable();
}
if ($rows > $items_per_page) echo "<div align='center' style='margin-top:5px;'>\n".makePageNav($rowstart,$items_per_page,$rows,3)."\n</div>\n";
} else {
opentable($locale['046']);
echo "<center><br>\n".$locale['047']."<br><br>\n</center>\n";
closetable();
}
} else {
include INCLUDES."comments_include.php";
include INCLUDES."ratings_include.php";
$result = dbquery(
"SELECT tn.*, user_id, user_name FROM ".$db_prefix."news tn
LEFT JOIN ".$db_prefix."users tu ON tn.news_name=tu.user_id
WHERE news_id='$readmore'"
);
if (dbrows($result)!=0) {
$data = dbarray($result);
if (checkgroup($data['news_visibility'])) {
$news_cat_image = "";
if (!isset($_POST['post_comment']) && !isset($_POST['post_rating'])) {
$result2 = dbquery("UPDATE ".$db_prefix."news SET news_reads=news_reads+1 WHERE news_id='$readmore'");
$data['news_reads']++;
}
$news_subject = $data['news_subject'];
if ($data['news_cat'] != 0) {
$result2 = dbquery("SELECT * FROM ".$db_prefix."news_cats WHERE news_cat_id='".$data['news_cat']."'");
if (dbrows($result2)) {
$data2 = dbarray($result2);
$news_cat_image = "<a href='news_cats.php?cat_id=".$data2['news_cat_id']."'><img src='".IMAGES_NC.$data2['news_cat_image']."' alt='".$data2['news_cat_name']."' align='left' style='border:0px;margin-top:3px;margin-right:5px'></a>";
}
}
$news_news = stripslashes($data['news_extended'] ? $data['news_extended'] : $data['news_news']);
$news_news = parselinks($news_news);
if ($data['news_breaks'] == "y") { $news_news = nl2br($news_news); }
if ($news_cat_image != "") $news_news = $news_cat_image.$news_news;
$news_info = array(
"news_id" => $data['news_id'],
"user_id" => $data['user_id'],
"user_name" => $data['user_name'],
"news_date" => $data['news_datestamp'],
"news_ext" => "n",
"news_reads" => $data['news_reads'],
"news_comments" => dbcount("(comment_id)", "comments", "comment_type='N' AND comment_item_id='".$data['news_id']."'"),
"news_allow_comments" => $data['news_allow_comments']
);
render_news($news_subject, $news_news, $news_info);
if ($data['news_allow_comments']) showcomments("N","news","news_id",$readmore,FUSION_SELF."?readmore=$readmore");
if ($data['news_allow_ratings']) showratings("N",$readmore,FUSION_SELF."?readmore=$readmore");
} else {
redirect(FUSION_SELF);
}
} else {
redirect(FUSION_SELF);
}
}
require_once "side_right.php";
require_once "footer.php";
?> Kliknij i zaczekaj na załadowanie kodu ...
Edytowane przez Pieka dnia 14.01.2009 14:11:45
|
|
|
|
DJPromo |
Dodany dnia 14.01.2009 14:44:39
|
Bywalec
Postów: 630 Pomógł: 41
v7.02.07 Data rejestracji: 13.06.2006 18:51
|
Nie jestem do końca pewien nie sprawdzałem do końca ale zobacz tak
plik
administration/news.php
Linia
159 mamy takie coś
$news_ratings = $data['news_allow_ratings'] == "1" ? " checked='checked'" : "";
Kliknij i zaczekaj na załadowanie kodu ...
Wzorując się na wypowiedzi naszego Włodka
dodaj pod tym od razu
if (!iSUPERADMIN){
if ($data['news_id'] == 4) $news_id='ZAKAZ';
}
Kliknij i zaczekaj na załadowanie kodu ...
wygląda to teraz tak
$news_ratings = $data['news_allow_ratings'] == "1" ? " checked='checked'" : "";
if (!iSUPERADMIN){
if ($data['news_id'] == 4) $news_id='ZAKAZ';
}
} else {
redirect(FUSION_SELF.$aidlink);
}
}
Kliknij i zaczekaj na załadowanie kodu ...
w miejscu czerwonej 4 wstawiasz swoje ID :)
Pomogłem Kliknij Pomógł
Życie to chwila zbyt krótka aby móc .... Życie to chwila / trzeba patrzeć i podziwiać
|
|
|