Heim Backend-Entwicklung PHP-Tutorial PHP经典项目案例-(1)博客管理系统2

PHP经典项目案例-(1)博客管理系统2

Jun 13, 2016 pm 12:11 PM
code image quot rand

PHP经典项目案例-(一)博客管理系统2

本篇给出数据库设计,及首页界面实现,验证码实现代码。

五、数据库设计

1、数据库表结构

2、文章表

3、注册用户表


4、图片表


5、文章评论表


6、评论回复表


7、公告表


8、好友表


六、首页验证码实现(借鉴别人的)

verifycode.php

<?php /*  图片验证码    */  session_start();  $num=4;//验证码个数  $width=60;//验证码宽度  $height=18;//验证码高度  $code=&#39; &#39;;  for($i=0;$i<$num;$i++)//生成验证码  {   switch(rand(0,2))   {    case 0:$code[$i]=chr(rand(48,57));break;//数字    case 1:$code[$i]=chr(rand(65,90));break;//大写字母    case 2:$code[$i]=chr(rand(97,122));break;//小写字母   }  }  $_SESSION["VerifyCode"]=$code;//使用session用于登陆时验证  $image=imagecreate($width,$height);  imagecolorallocate($image,255,255,255);  for($i=0;$i<80;$i++)//生成干扰像素  {   $dis_color=imagecolorallocate($image,rand(0,255),rand(0,255),rand(0,255));   imagesetpixel($image,rand(1,$width),rand(1,$height),$dis_color);  }  for($i=0;$i<$num;$i++)//打印字符到图像  {   $char_color=imagecolorallocate($image,rand(0,2555),rand(0,255),rand(0,255));   imagechar($image,30,($width/$num)*$i,rand(0,5),$code[$i],$char_color);  }  header("Content-type:image/png");  imagepng($image);//输出图像到浏览器  imagedestroy($image);//释放资源?> 
Nach dem Login kopieren

在首页登陆那一栏使用这一表单:

Nach dem Login kopieren
用户名: 密码: 验证码: 验证码
在验证码图片上添加响应动作,刷新验证码onClick="javascript:refresh_code()"

在js文件里实现这个动作

function refresh_code(){	document.getElementById('imgcode').src="verifycode.php?a="+Math.random();}
Nach dem Login kopieren
传递的a值只是为了实现刷新,也就是加载不同的验证码页面,也就实现了刷新。





Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

Video Face Swap

Video Face Swap

Tauschen Sie Gesichter in jedem Video mühelos mit unserem völlig kostenlosen KI-Gesichtstausch-Tool aus!

Heiße Werkzeuge

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Wie behebe ich den Fehler „undefiniert: rand.Seed' in Golang? Wie behebe ich den Fehler „undefiniert: rand.Seed' in Golang? Jun 25, 2023 am 08:34 AM

Während des Entwicklungs- oder Lernprozesses bei der Verwendung von Golang kann es sein, dass wir auf die Fehlermeldung undefiniert:rand.Seed stoßen. Dieser Fehler tritt normalerweise auf, wenn Sie einen Zufallszahlengenerator verwenden müssen, da Sie in Golang einen Zufallszahlen-Startwert festlegen müssen, bevor Sie die Funktion im Rand-Paket verwenden können. In diesem Artikel wird erläutert, wie Sie diesen Fehler beheben können. 1. Führen Sie das Paket math/rand ein. Zuerst müssen wir das Paket math/rand in den Code einführen. existieren

So nutzen Sie Bing Image Creator kostenlos So nutzen Sie Bing Image Creator kostenlos Feb 27, 2024 am 11:04 AM

In diesem Artikel werden sieben Möglichkeiten vorgestellt, mit dem kostenlosen BingImageCreator eine qualitativ hochwertige Ausgabe zu erhalten. BingImageCreator (jetzt bekannt als ImageCreator für Microsoft Designer) ist einer der großartigen Online-Kunstgeneratoren für künstliche Intelligenz. Es generiert äußerst realistische visuelle Effekte basierend auf Benutzereingaben. Je spezifischer, klarer und kreativer Ihre Aufforderungen sind, desto besser werden die Ergebnisse sein. BingImageCreator hat erhebliche Fortschritte bei der Erstellung hochwertiger Bilder gemacht. Es verwendet jetzt den Dall-E3-Trainingsmodus und zeigt ein höheres Maß an Detailgenauigkeit und Realismus. Allerdings hängt die Fähigkeit, konsistent HD-Ergebnisse zu liefern, von mehreren Faktoren ab, unter anderem von der Geschwindigkeit

So löschen Sie Bilder von Xiaomi-Telefonen So löschen Sie Bilder von Xiaomi-Telefonen Mar 02, 2024 pm 05:34 PM

Wie lösche ich Bilder auf Xiaomi-Handys? Sie können Bilder auf Xiaomi-Handys löschen, aber die meisten Benutzer wissen nicht, wie man Bilder auf Xiaomi-Handys löscht können Sie bei uns vorbeischauen. Mal sehen! So löschen Sie Bilder auf dem Xiaomi-Mobiltelefon 1. Öffnen Sie zunächst die Funktion [Album] im Xiaomi-Mobiltelefon. 2. Überprüfen Sie dann die nicht benötigten Bilder und klicken Sie auf die Schaltfläche [Löschen] in der unteren rechten Ecke Um den Spezialbereich aufzurufen, wählen Sie oben [Papierkorb] aus. 4. Klicken Sie dann direkt auf [Papierkorb leeren], wie in der Abbildung unten gezeigt. 5. Klicken Sie abschließend direkt auf [Permanent löschen].

Bearbeiten Sie Ihr Unity-Projekt in Visual Studio Code und schon können Sie loslegen Bearbeiten Sie Ihr Unity-Projekt in Visual Studio Code und schon können Sie loslegen Aug 08, 2023 am 10:21 AM

Microsoft hat eine Vorschauversion der Unity-Erweiterung für Visual Studio Code veröffentlicht. Mit dieser neuen Unity-Erweiterung können Sie Unity-Spiele schreiben und debuggen. Diese neue Unity-Erweiterung bringt einige beliebte Funktionen, die bereits in Visual Studio und Visual Studio Tools für Unity verfügbar sind, und macht C# in Visual Studio Code für die Unity-Entwicklung besser. Derzeit bietet die Unity-Erweiterung für VSCode Folgendes: Einen Unity-Debugger zum Debuggen Ihres Unity-Editors und Unity-Players. Unity-spezifischer C#-Analysator und Refactoring. Uni

php提交表单通过后,弹出的对话框怎样在当前页弹出,该如何解决 php提交表单通过后,弹出的对话框怎样在当前页弹出,该如何解决 Jun 13, 2016 am 10:23 AM

php提交表单通过后,弹出的对话框怎样在当前页弹出php提交表单通过后,弹出的对话框怎样在当前页弹出而不是在空白页弹出?想实现这样的效果:而不是空白页弹出:------解决方案--------------------如果你的验证用PHP在后端,那么就用Ajax;仅供参考:HTML code

Imagemagic-Installation Centos und Image-Installations-Tutorial Imagemagic-Installation Centos und Image-Installations-Tutorial Feb 12, 2024 pm 05:27 PM

LINUX ist ein Open-Source-Betriebssystem und daher die erste Wahl für viele Entwickler und Systemadministratoren. Im LINUX-System ist die Bildverarbeitung eine sehr wichtige Aufgabe, und Imagemagick und Image sind zwei sehr beliebte Bildverarbeitungstools Der Artikel führt Sie in die Installation von Imagemagick und Image im Centos-System ein und bietet detaillierte Installationsanleitungen. Imagemagic-Installation Centos-Tutorial Imagemagick ist ein leistungsstarkes Bildverarbeitungs-Toolset, das verschiedene Bildoperationen unter der Befehlszeile ausführen kann. Im Folgenden sind die Schritte zur Installation von Imagemagick auf dem Centos-System aufgeführt: 1

Wie synchronisiert man die Zufallszahlengenerierung in der Golang-Parallelverarbeitung? Wie synchronisiert man die Zufallszahlengenerierung in der Golang-Parallelverarbeitung? Jun 03, 2024 pm 02:53 PM

Synchronisieren der Zufallszahlengenerierung in der gleichzeitigen Go-Programmierung: Verwenden Sie einen Mutex (sync.Mutex), um den Zugriff auf den Zufallszahlengenerator rand.Rand zu steuern. Jede Goroutine erhält die Mutex-Sperre, bevor sie Zufallszahlen generiert, und gibt die Mutex-Sperre nach der Generierung frei. Dadurch wird sichergestellt, dass jeweils nur eine Goroutine auf den Zufallszahlengenerator zugreifen kann, wodurch Datenrennen vermieden werden.

So lösen Sie das Problem der Generierung derselben Zufallszahlen mithilfe der PHP-Rand-Funktion So lösen Sie das Problem der Generierung derselben Zufallszahlen mithilfe der PHP-Rand-Funktion Mar 23, 2023 am 09:17 AM

Die Funktion rand() verwendet bei jedem Aufruf dieselben anfänglichen Startwerte. Der voreingestellte anfängliche Startwert wird aus der Uhrzeit des Betriebssystems ermittelt, hat jedoch nur eine Genauigkeit im Mikrosekundenbereich. Das heißt, innerhalb einer sehr kurzen Zeitspanne verwenden viele rand()-Funktionsaufrufe denselben anfänglichen Startwert, was zur gleichen Zufallszahlengenerierung führt. Wie kann man dieses Problem lösen?

See all articles