Jadual Kandungan
回复讨论(解决方案)
Rumah pembangunan bahagian belakang tutorial php mysql数据库只能被update一次吗?并且怎么让结果与字符串对比

mysql数据库只能被update一次吗?并且怎么让结果与字符串对比

Jun 23, 2016 pm 02:12 PM

php做的下载功能,完成的功能有:
1. 如果没有登录就跳转到登录界面
2. 下载计数

代码如下:(有3个问题写在代码注释中,非常感谢)

点击要下载的文件(一个链接)跳转到singledownload.php页面处理下载
&file_name=&file_id=' />

singledownload.php页面的代码

        $file_name = $_GET['file_name'];   //文件名(数据库中查找出来的)	$file_dir  = $_GET['file_dir'];      //文件路径(固定的)	$file_id = $_GET['file_id'];    //文件ID(数据库中查找出来的)		/*连接数据库*/	$link=mysql_connect("localhost","root","root"); 	mysql_select_db("wpgc", $link);	$q = "SELECT * FROM downloads WHERE file_id=" . $file_id;		mysql_query("SET NAMES UTF-8");	$rs = mysql_query($q, $link); //获取结果集	if(!$rs){	    die("无效结果集");	}		//权限检测	if ( !is_user_logged_in() ) { //如果没有登录	    if ( $row[10] == "2") { //检查文件权限‘2’的意思是登录后才能下载这个文件               //问题1:$row[]是什么?我没有在任何地方定义过,并且程序没有进入这里;但是在链接中$row[1]是成功的,我希望$row[]是数据库中存放的值	        echo "<script>window.location ='../../../login.php';</script>";           }	}	        /*计算下载次数*/	$downloadcount = $row[9];	$downloadcount = $downloadcount + 1;			$sql = "UPDATE downloads SET file_hits = " . $downloadcount . " WHERE file_id = " . $file_id;        //问题2:这里只能更新一次,第一次下载 更新file_hits字段从0变成1,之后再下载就不会变了	if(mysql_query($sql, $link)){	    	} else {	    	}        //问题3:这个if判断总是说找不到文件,但是将这个注释了以后文件的下载正常        if(!file_exists($file_dir.$file_name)){            echo "找不到 [" . $file_dir.$file_name . "] 文件";	    exit;	}else{            /*开始下载文件(这里很正常)*/		$file = fopen($file_dir.$file_name,"r");		Header("Content-type: application/octet-stream");		Header("Accept-Ranges: bytes");		Header("Accept-Length: ".filesize($file_dir.$file_name));		Header("Content-Disposition: attachment; filename=".$file_dir.$file_name);		echo fread($file, filesize($file_dir.$file_name));		$buffer=1024;		while (!feof($file)) {			$file_data=fread($file,$buffer);			echo $file_data;		}		fclose($file);


我是php新手 请多指教...


回复讨论(解决方案)

1、不是你写的代码吗,你自己不知道别人更不知道了。
2、打印一下各个值对不
3、路径不正确吧

1、不是你写的代码吗,你自己不知道别人更不知道了。
2、打印一下各个值对不
3、路径不正确吧
我是模仿别人写的,所以有很多疑问 大侠 .. 

模仿是没有用的
你需要知道是你想做什么

Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn

Alat AI Hot

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

Video Face Swap

Video Face Swap

Tukar muka dalam mana-mana video dengan mudah menggunakan alat tukar muka AI percuma kami!

Alat panas

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina

SublimeText3 versi Cina

Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1

Hantar Studio 13.0.1

Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6

Dreamweaver CS6

Alat pembangunan web visual

SublimeText3 versi Mac

SublimeText3 versi Mac

Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Jelaskan JSON Web Tokens (JWT) dan kes penggunaannya dalam PHP API. Jelaskan JSON Web Tokens (JWT) dan kes penggunaannya dalam PHP API. Apr 05, 2025 am 12:04 AM

JWT adalah standard terbuka berdasarkan JSON, yang digunakan untuk menghantar maklumat secara selamat antara pihak, terutamanya untuk pengesahan identiti dan pertukaran maklumat. 1. JWT terdiri daripada tiga bahagian: header, muatan dan tandatangan. 2. Prinsip kerja JWT termasuk tiga langkah: menjana JWT, mengesahkan JWT dan muatan parsing. 3. Apabila menggunakan JWT untuk pengesahan di PHP, JWT boleh dijana dan disahkan, dan peranan pengguna dan maklumat kebenaran boleh dimasukkan dalam penggunaan lanjutan. 4. Kesilapan umum termasuk kegagalan pengesahan tandatangan, tamat tempoh, dan muatan besar. Kemahiran penyahpepijatan termasuk menggunakan alat debugging dan pembalakan. 5. Pengoptimuman prestasi dan amalan terbaik termasuk menggunakan algoritma tandatangan yang sesuai, menetapkan tempoh kesahihan dengan munasabah,

Bagaimanakah sesi merampas kerja dan bagaimana anda dapat mengurangkannya dalam PHP? Bagaimanakah sesi merampas kerja dan bagaimana anda dapat mengurangkannya dalam PHP? Apr 06, 2025 am 12:02 AM

Sesi rampasan boleh dicapai melalui langkah -langkah berikut: 1. Dapatkan ID Sesi, 2. Gunakan ID Sesi, 3. Simpan sesi aktif. Kaedah untuk mengelakkan rampasan sesi dalam PHP termasuk: 1. Gunakan fungsi Sesi_Regenerate_ID () untuk menjana semula ID Sesi, 2. Data sesi stor melalui pangkalan data, 3.

Huraikan prinsip -prinsip yang kukuh dan bagaimana ia memohon kepada pembangunan PHP. Huraikan prinsip -prinsip yang kukuh dan bagaimana ia memohon kepada pembangunan PHP. Apr 03, 2025 am 12:04 AM

Penerapan prinsip pepejal dalam pembangunan PHP termasuk: 1. Prinsip Tanggungjawab Tunggal (SRP): Setiap kelas bertanggungjawab untuk hanya satu fungsi. 2. Prinsip Terbuka dan Tutup (OCP): Perubahan dicapai melalui lanjutan dan bukannya pengubahsuaian. 3. Prinsip Penggantian Lisch (LSP): Subkelas boleh menggantikan kelas asas tanpa menjejaskan ketepatan program. 4. Prinsip Pengasingan Antara Muka (ISP): Gunakan antara muka halus untuk mengelakkan kebergantungan dan kaedah yang tidak digunakan. 5. Prinsip Inversi Ketergantungan (DIP): Modul peringkat tinggi dan rendah bergantung kepada abstraksi dan dilaksanakan melalui suntikan ketergantungan.

Bagaimana cara menetapkan kebenaran secara automatik UnixSocket selepas sistem dimulakan semula? Bagaimana cara menetapkan kebenaran secara automatik UnixSocket selepas sistem dimulakan semula? Mar 31, 2025 pm 11:54 PM

Bagaimana untuk menetapkan keizinan UnixSocket secara automatik selepas sistem dimulakan semula. Setiap kali sistem dimulakan semula, kita perlu melaksanakan perintah berikut untuk mengubahsuai keizinan UnixSocket: sudo ...

Bagaimana cara debug mod CLI dalam phpstorm? Bagaimana cara debug mod CLI dalam phpstorm? Apr 01, 2025 pm 02:57 PM

Bagaimana cara debug mod CLI dalam phpstorm? Semasa membangun dengan PHPStorm, kadang -kadang kita perlu debug PHP dalam mod Interface Line Command (CLI) ...

Terangkan pengikatan statik lewat dalam php (statik: :). Terangkan pengikatan statik lewat dalam php (statik: :). Apr 03, 2025 am 12:04 AM

Mengikat statik (statik: :) Melaksanakan pengikatan statik lewat (LSB) dalam PHP, yang membolehkan kelas panggilan dirujuk dalam konteks statik dan bukannya menentukan kelas. 1) Proses parsing dilakukan pada masa runtime, 2) Cari kelas panggilan dalam hubungan warisan, 3) ia boleh membawa overhead prestasi.

Bagaimana cara menghantar permintaan pos yang mengandungi data JSON menggunakan perpustakaan php curl? Bagaimana cara menghantar permintaan pos yang mengandungi data JSON menggunakan perpustakaan php curl? Apr 01, 2025 pm 03:12 PM

Menghantar data JSON menggunakan perpustakaan Curl PHP dalam pembangunan PHP, sering kali perlu berinteraksi dengan API luaran. Salah satu cara biasa ialah menggunakan perpustakaan curl untuk menghantar post ...

See all articles