我在页面中显示已过滤的项目列表,现在我必须通过对结果进行分页来限制显示.
所以,如果我有这样的url参数:
example.com/?category=pizza&period=today
Run Code Online (Sandbox Code Playgroud)
类别和期间也不能显示:
example.com/?period=today
example.com/
Run Code Online (Sandbox Code Playgroud)
如何在最后添加"下一页"以保留任何先前的参数并添加
&pagenum=5
Run Code Online (Sandbox Code Playgroud)
或者如果没有参数:
?pagenum=5
Run Code Online (Sandbox Code Playgroud)
Tnx提前!
我使用javascript函数来存储cookie:
createCookie("teaser", "teaser", 7);
function createCookie(name, value, days) {
var expires = "";
if (days) {
var date = new Date();
date.setTime(date.getTime() + (days * 24 * 60 * 60 * 1000));
expires = "; expires=" + date.toGMTString();
}
document.cookie = name + "=" + value + expires + "; path=/";
return value;
}
Run Code Online (Sandbox Code Playgroud)
当我在浏览器中检查cookie时,预告片的cookie到期时间设置正确:25.oktober 2011 16:12:17
但是当在C#中我去获取值时,到期日期设置为01.01.0001.
var cookie = Request.Cookies["teaser"];
if (cookie != null && teaserList.Count() > 0)
{
cookie.Expires is 01.01.0001
Run Code Online (Sandbox Code Playgroud)
任何线索?
我必须修复一个易受SQL注入攻击的项目.
项目中每个页面中的所有表单都不使用参数化查询,而只使用字符串查询.
对于例如我有搜索页,看着后面的代码我看到有一个方法CreateQuery()创建的文本字段作为例如查询筑底:
string sQuery = "";
sQuery += "b.name like '%" + txtName.Text + "%'";
Run Code Online (Sandbox Code Playgroud)
然后在btnSearch_Click()我有查询的方法:
query = CreateQuery();
var totalList = GetAllBlaBla(query);
Run Code Online (Sandbox Code Playgroud)
我的问题是:
由于我有数百种形式和成千上万的formTextFIX价值,因此有一种"快速"的解决方案可以实现
SubmitButton_Click()代码隐藏方法中执行的,我可以在这里处理这种情况吗?(编辑)编码/解码输入值怎么样?所以上面的例子将是:
string sQuery = "";
var txt = var txt = HttpUtility.HtmlEncode(txtName.Text);
sQuery += "b.name like '%" + txt + "%'";
Run Code Online (Sandbox Code Playgroud)
这是一个可能的临时补丁吗?
5-(编辑)这是一个可能的解决方案,还是根本不改变任何东西?
cmd.Parameters.Add("@txtNameParameter", SqlDbType.VarChar);
cmd.Parameters["@txtNameParameter"].Value = txtName.Text;
sQuery += "b.name like '%" + (string)cmd.Parameters["@txtNameParameter"].Value + "%'";
Run Code Online (Sandbox Code Playgroud)
问题是我必须返回一个字符串,因为处理查询的逻辑是在另一个将字符串作为查询的业务类中定义的,我不能给它一个CommandType或SqlDataAdapter ...
建议?
提前致谢.
问题:我有一个带有文本值的表单,以及一个必须根据文本值的值返回字符串查询的函数.
解决方案:我使用参数创建了一个SQLCommand查询,然后我将SQLCommand.CommandText放到一个字符串中,然后将其返回(将要处理查询的业务逻辑)
主要问题:它是sql注入证明吗?
代码示例:
sQuery = "select * from xy where x like '%@txtNameParameter%'";
SqlCommand cmd = new SqlCommand(sQuery);
cmd.Parameters.Add("@txtNameParameter", SqlDbType.VarChar);
cmd.Parameters["@txtNameParameter"].Value = txtName.Text;
string query = cmd.CommandText;
return query;
Run Code Online (Sandbox Code Playgroud)
如果主要问题是好的子问题:我是否应该将参数放入radiobutton和dropdownmenu的值或者它们是否注入防护?
我在这个问题面前,我无法弄清楚如何正确解决.
我正在使用脚本:
<script type="text/javascript" src="http://www.gta4.it/stat/view_stats.js.php?mode=0"> </script>
Run Code Online (Sandbox Code Playgroud)
具有单个输出document.write:
document.write('11');
Run Code Online (Sandbox Code Playgroud)
因此,使用JavaScript显示数字.我想要做的是获取它的内容document.write并将其写入另一个服务器中的变量JavaScript或PHP.
任何的想法?
我正在使用asp.net MVC3作为一个网站,在视图中使用foreach显示查询结果(在控制器中管理).
我现在要做的是每次都自动刷新查询的输出,而不刷新页面.
我怎么能用ajax做到这一点?
这是视图的代码:
@{
string firstTime = "";
}
@foreach( var database in Model)
{
if (!(firstTime == database.DB))
{
<h3> @database.DB </h3>
}
<div class="logContainer" onclick="location.href='/logs/Details?databaseID=@database.DB&exceptionName=@database.Exception&exceptionsOccurred=@database.Count';">
<div class="counter"><b>@database.Count</b></div>
<div class="exceptionName"> Exceptions of Type: @database.Exception</div>
<div class="date">Siste: @database.LastOccurred</div>
</div>
<hr />
firstTime = database.DB;
}
Run Code Online (Sandbox Code Playgroud) 我必须根据一个可以为null的值来选择相关列.详细地:
SELECT shoporders.orderid,
shopaddresses.companyname,
shopaddresses.firstname,
shopaddresses.lastname,
shopaddresses.address1,
FROM shoporders
INNER JOIN shopaddresses
ON shoporders.InvoiceAddressId = shopaddresses.addressid
where orderid = 110
order by shoporders.createddate desc
Run Code Online (Sandbox Code Playgroud)
如果shoporders.InvoiceAddressId为null,那么我必须使用shoporders.DeliveryAddressId
任何线索?
提前致谢
我在类上有一个字段应该正确设置当前日期:
private static DateTime Today = new DateTime(DateTime.Now.Year, DateTime.Now.Month, DateTime.Now.Day);
Run Code Online (Sandbox Code Playgroud)
然后我根据当天执行不同的逻辑.问题是它在本地工作,但它不能在实时服务器上运行.因此,例如,如果日期是第5个,那么将执行第4个逻辑,除非我触摸web.config或更新dll.所以我认为这是一个缓存问题,但为什么呢?我根本没有缓存日期.我没有使用DateTime.Today,因为我认为这是问题...
我从Linq查询返回一个List,然后我必须用for循环填充其中的值.问题是它太慢了.
var formentries = (from f in db.bNetFormEntries
join s in db.bNetFormStatus on f.StatusID.Value equals s.StatusID into entryStatus
join s2 in db.bNetFormStatus on f.ExternalStatusID.Value equals s2.StatusID into entryStatus2
where f.FormID == formID
orderby f.FormEntryID descending
select new FormEntry
{
FormEntryID = f.FormEntryID,
FormID = f.FormID,
IPAddress = f.IpAddress,
UserAgent = f.UserAgent,
CreatedBy = f.CreatedBy,
CreatedDate = f.CreatedDate,
UpdatedBy = f.UpdatedBy,
UpdatedDate = f.UpdatedDate,
StatusID = f.StatusID,
StatusText = entryStatus.FirstOrDefault().Status,
ExternalStatusID = f.ExternalStatusID,
ExternalStatusText = entryStatus2.FirstOrDefault().Status
}).ToList();
Run Code Online (Sandbox Code Playgroud)
然后我以这种方式使用for:
for(var x=0; x<formentries.Count(); …Run Code Online (Sandbox Code Playgroud) c# ×7
asp.net ×6
javascript ×4
.net ×2
jquery ×2
sql ×2
ajax ×1
cookies ×1
date ×1
datetime ×1
iis ×1
linq ×1
mysql ×1
parameters ×1
php ×1
sql-server ×1
sqlcommand ×1