我有一个指向我网站上的音乐文件的链接,现在该文件的名称在上传时被哈希,所以我想使用我存储在我的数据库中的原始文件名,我做了一些研究,发现这个新的'下载'a'标签的'属性,但只适用于firefox和chrome的更高版本,它在ie中不起作用,也不适用于我使用的下载管理器,所以我在线查看并找到了标题然后我实施了.我现在知道文件名已经改变了,但无论我试图下载哪个音乐文件,音乐文件都会保存为'11 .35kb'文件大小.这是我的代码:
if (isset($_REQUEST['download']))
{
$download_id = $_REQUEST['download'];
$db = new MysqliDatabase(ConnectionString);
$result = array();
$result = $db->query_one("SELECT TrackID, ma.ArtisteName, FeaturedArtistes,
mc.Category, TrackName
FROM `musictracks` mt
LEFT JOIN `musiccategories` mc
ON mt.CategoryID = mc.CategoryID
LEFT JOIN `musicartistes` ma
ON mt.ArtisteID = ma.ArtisteID
WHERE mt.TrackID = '$download_id';");
$filename = $result->TrackPath;
$outputfilename = $result->ArtisteName . ' ft. ' . $result->FeaturedArtistes . ' - ' . $result->TrackName . '.mp3';
header("Content-Type: audio/mpeg");
header("Content-Disposition: attachment; filename=\"" . basename($outputfilename) . "\";" );
header("Content-Transfer-Encoding: binary");
readfile("$filename");
} …Run Code Online (Sandbox Code Playgroud) 我正在为我的网站在php中创建一个简单的登录功能,现在我已经尝试了所有内容并且它运行良好,然后我决定通过将所有功能组合在一个文件,我的数据库设置和另一个文件中的连接以及我的组合来重新组织我的文件另一个文件中的会话配置(用于在我的localhost上运行).
我这样做的目的只是为了让我的代码在将来保持整洁有序,易于理解.
这是我的登录页面:
<?php
include('session-config.php');
include('dbconnection.php');
include('functions.php');
include('password_hash_lib/password.php');
if (isset($_POST['data']))
{
$data = $_POST['data'];
$auth = json_decode($data);
$user_email = $auth->Email;
$user_pass = $auth->Password;
authenticate($user_email, $user_pass);
}
function authenticate($Email, $Password)
{
$HashedPassword = password_hash($Password, PASSWORD_DEFAULT);
$sql = "SELECT * FROM app_users WHERE user_email='$Email'";
$result = $db->query($sql);
$User = $result->fetch_object();
if ($User->user_email == '')
{
header("Location: login-page.html?msg=failed");
}
if (password_verify($Password, $User->user_password_hash))
{
$_SESSION["user_auth_details"] = $User->user_id . "+" . $User->user_email . '+' . $User->user_name . "+" . $User->user_display_image . "+" . $User->user_display_name;
header("Location:" …Run Code Online (Sandbox Code Playgroud) 我知道有很多关于这方面的话题,因为我已经搜索了它,但据我所知,它们都没有适合我的代码.我只是想在插入后从我的数据库返回一个自动生成的ID.这是我的代码的一部分:
using (***LINQDataContext dc = new ***LINQDataContext())
{
dc.Users.InsertOnSubmit(new User
{
Username = user,
Password = EncryptPassword(user, pass, 1, null, null),
Email = email
});
dc.SubmitChanges();
return true;
}
Run Code Online (Sandbox Code Playgroud) 我是整个LINQ系统的新手,我将密码哈希并存储在我的数据库的varbinary字段中,现在我想从我的数据库中获取该值并将其存储在字节数组中以使用LINQ进行比较.我之前做过这样的事情:
System.Data.SqlTypes.SqlBytes sqlPassBinary = dr.GetSqlBytes(dr.GetOrdinal("Password"));
Run Code Online (Sandbox Code Playgroud)
现在我想尝试应用这个相同的概念,但这次使用LINQ.我尝试了这个,但它不起作用:
public bool Authenticate(string user, string pass)
{
***LINQDataContext d = new ***LINQDataContext();
var login = from us in d.Users
join ur in d.UserRoles on us.UserRoleID equals ur.UserRoleID
where us.Username == user
select us;
if ((login as IEnumerable<object>).Any())
{
System.Web.HttpContext.Current.Session["UserID"] = login.FirstOrDefault().UserID.ToString();
System.Web.HttpContext.Current.Session["UserRole"] = login.FirstOrDefault().UserRole.ToString();
byte[] sqlbinary = (byte[]) login.FirstOrDefault().Password;;
return true;
}
return false;
}
Run Code Online (Sandbox Code Playgroud)
我得到这个错误:

我试图将一些json数据发布到我的localhost上的asp.netserver.接收代码的页面应该是主页面,但是我试过并得到"错误403:禁止",所以我尝试了我的手上的Web服务,现在我有一大堆其他问题.我的主要问题是我可以在PHP中简单地完成这项工作,但我不知道如何在ASP.NET中实现这一点.
这是我的js文件:
// Get User Login Credentials
function authenticate() {
$(document).ready(function () {
var user = $('.login-box form #txtLoginUsername').val().trim();
var pass = $('.login-box form #txtLoginPass').val().trim();
// alert(user + " : " + pass);
$.ajax({
type: "POST",
url: "postback.asmx/Verify",
data: {
user: user,
pass: pass
},
dataType: "json",
contentType: "application/json; charset=utf-8",
success: function() {
if (response)
{
alert('Works');
}
else {
$(".ui-widget").slideDown(1000, function () {});
}
}
});
});
}
Run Code Online (Sandbox Code Playgroud)
现在我在按钮单击事件上调用此函数,我不添加我的服务器代码,因为它包含我从网络中拾取的几行代码并尝试混搭以使我的页面工作,但事实并非如此.我想知道从帖子中获取JSON对象并从我的服务器返回值/数组的简单适当方法.
我不希望使用任何asp.net服务器控件由于某些原因我无法透露,但我已被限制使用此类控件.