NetVision-Technik

Zur?ck   NetVision-Technik > Forum > Programmierung > C / C++

C / C++ Hier findet ihr Code-Schnipsel zu C & C++

Antwort
 
Themen-Optionen Ansicht
Alt 15.03.2009, 21:56   #1
C# - Login (PHP, MySQL)
TrackerPolizei TrackerPolizei ist offline 15.03.2009, 21:56

Hallo und Herzlich Willkommen zur Hobbythek,

heute zeige ich euch, wie ihr mit C#
Ein Loginsystem + eine registration mit einer MySQL-Datenbank
zaubert.

Was benötigen wir?:
- Einen Webspace + MySQL-Datenbank
Ich empfehle funpic, ohost.
- Erfahrungen mit dem phpMyAdmin, und wie man
in funpic oder ohost oder auf eurem Hoster
auf ihn gelangt.

Schritt^1:
- MySQL-Datenbank erstellen, namen merken in unserem Fall
"testdatenbank".
- MySQL-Nutzer erstellen, namen merken in userem Fall
"testnutzer".
- MySQL-Password erstellen, pw merken in unserem Fall
"testpasswort".

Schritt^2:
Nun legt ihr in eurer Datenbank eine neue Tabelle an.
Dazu klicken wir im phpMyadmin links in der Liste auf unsere blaue Datenbank auf den Datenbanknamen, der ist blau hinterlegt.

Diese Tabelle nennt ihr "users" oder wie ihr wollt,
und gebt die Felderanzahl 5 ein.
Felder für "id", "username", "password", "email", "ip".
Natürlich könnt ihr noch weitere Felder ergänzen.

Schritt^3:
Ihr seid auf der nächsten Seite,
nun habe ich ein Bild für euch, wie ihr es einstellen müsst.

Anhang 2740

Falls das Bild nicht angezeigt wird,
gibt es hier eine Beschreibung was ich eingegeben habe.

Feld "id": Typ[INT], Länge/Set[8], Attribute[UNSIGNED], Extra[auto_increment].
Feld "username": Typ[TEXT], Länge/Set[20].
Feld "password": Typ[TEXT], Länge/Set[20].
Feld "email": Typ[TEXT], Länge/Set[20].
Feld "ip": TYP[VARCHAR], Länge/Set[30].

Tabellenformat: MYISAM.

Schritt^5:
Nun erstellen wir eine php-Datei wir nennen sie, sodass es sich professioneller anhört

"config.inc.php" oder "config.php" ich habe mich jedoch für
"config.inc.php" entschieden.

Inhalt der config.inc.php

PHP-Code:
<?php

// Database-Script by TP

$database_host "localhost"// Host der Datenbank
$database_name "testdatenbank"// Name deiner Datenbank
$database_user "testnutzer"// Name des Nutzers der Datenbank
$database_password "testpasswort"// Passwort des nutzers

// Wir haben nun eine Konfigurationsdatei erstellt, die alle Daten die wir für unseren MySQL-Login brauchen.

?>
Schritt^6:
Wir erstellen nun die register.html und die register_success.php.
register.html ist das Formular mit dem man sich registrieren kann,
register_success.php wird aufgerufen, wenn die Registration abgeschlossen ist.

Inhalt der register.html:

HTML-Code:
<!-- Register.html by TP -->
<!-- Hochgradig invalide, kein doctype usw, aber wayne -->

<html>
<head>
<title>Registrierung - Testprogramm</title>
</head>
<body>
<form action="register_success.php" method="post" name="register_form">
Nutzername:&nbsp;<input type="text" name="username" value="Dein Benutzername.." /><br />
Passwort:&nbsp;<input type="password" name="password" /><br />
E-Mail:&nbsp;<input type="text" name="email" /><br />
<input type="submit" name="submit" value="Registrieren" />
</form>
<!-- Eindeutige Namen der Felder sind das A und O -->
</body>
</html>
Inhalt der register_success.php:

PHP-Code:
<?php
include_once("config.inc.php"); // includet die config.inc.php

mysql_connect($database_host$database_user$database_password); // connectet zur mysql-db
mysql_select_db($database_name); // wählt die datenbank aus.

$username $_POST['username']; // Holt unseren geposteten username
$password md5($_POST['password']); // Holt das password und jagt es in einen md5.
$email $_POST['email']; // holt die email
$ip $_SERVER['REMOTE_ADDR']; // erstellt variable ip und weist ihr den wert der ip von dir zu.

$insert_query "INSERT INTO users (username, password, email, ip) VALUES ('$username', '$password', '$email', '$ip')"// erstellt eine neue variable inder unsere mysql-query gespeichert ist ( die mysql-query füllt die datenbank mit den relevanten daten. Die id generiert sich automatisch, erinnerst du dich? auto_increment. )
mysql_query($insert_query) or die(mysql_error()); // führt die query auf den mysql-server aus.

echo "Herzlichen Glückwunsch du bist registriert!";

?>
Schritt^7:
Wir brauchen eine login.html und eine login.php
die login.html wieder das Formular wo die Daten gesendet werden
die .php-Datei prüft natürlich wieder alles.

Inhalt der login.html:

HTML-Code:
<!-- loginscript by TP -->
<html>
<head>
<title>Login</title>
</head>
<body>
<form action="login.php" method="post" name="login_form">
Username: <input type="text" name="username" /><br />
Passwort: <input type="password" name="password" /><br />
</form>
</body>
</html>
Inhalt der login.php:

PHP-Code:
<?php
include_once("config.inc.php"); // includet konfigurationsdatei
mysql_connect($database_host$database_user$database_password); // verbindet sich zur datenbank
mysql_select_db($database_name); // wählt datenbank aus
$username $_POST['username']; // postet nutzernamen
$password md5($_POST['password']); // postet passwort und md5t dann.

$get_password "SELECT password FROM users WHERE username = '$username'"// unser query
$q mysql_query($get_password);
$rw mysql_fetch_object($q);
$pw_from_db $rw->password// unser passwort aus der datenbank

if($password == $pw_from_db// if.
{
echo 
"gut, erfolgreich eingeloggt";
}
else
{
echo 
"verweigert du nap k0rb";
}

?>
Schritt^8:
Wir verwenden auf keinen Fall GET für den Login, sondern POST, damit nicht jedes Berufskiddie einen bruteforce schreibt der einfach nur WebClient.DownloadString verwendet, wir wollen's dann schon etwas komplizierter machen (NameValueCollection), jetzt kommt der Teil, wo C# im Spiel ist.

Natürlich ebenfalls kommentiert.

PHP-Code:
private void _login(string accstrstring pwdstr// erstellt private methode
{
System.Collections.Specialized NameValueCollection _nv = new System.Collections.Specialized NameValueCollection(); // erstellt neue namevaluecollection

_nv.Add("username"accstr); // fügt ihr mit methode add daten hinzu.
_nv.Add("password"pwdstr);

byte[] b_arr = new System.Net.WebClient().UploadValues("deinserver.tld/login.php""POST"_nv); // lädt daten auf die login.pgp mit method post hoch.
string encstr Encoding.ASCII.GetString(b_arr); // enkodiert die daten aus dem byte-array.

if(encstr.Contains("erfolgreich")) // prüft ob erfolgreich.
{
MessageBox.Show("Zugriff gewährt!");
}
else
{
MessageBox.Show("Zugriff verweigert!");
}

Fertig!

Ihr könnt euch nun in der register.html registrieren und mit login.html einloggen.

Dieses Tutorial wurde von mir eigenhändig geschrieben kein Source wurde geklaut und verändert, ich bitte meine Arbeit zu berücksichtigen und konstruktive Kritik zu äußern

TrackerPolizei

Ge?ndert von TrackerPolizei (10.11.2010 um 20:53 Uhr).

 
Benutzerbild von TrackerPolizei
TrackerPolizei
Profi
Punkte: 15.522, Level: 80 Punkte: 15.522, Level: 80 Punkte: 15.522, Level: 80
Levelaufstieg: 35% Levelaufstieg: 35% Levelaufstieg: 35%
Aktivität: 25,0% Aktivität: 25,0% Aktivität: 25,0%
Letzte Erfolge
Artikel Benutzer besitzt 1x Profi Benutzer besitzt 1x Ideen-Spender Benutzer besitzt 1x Helfer
Registriert seit: 12.03.2008
Beitr?ge: 986
Abgegebene Danke: 21
Erhielt 1.079 Danke für 154 Beiträge
Downloads: 32
Uploads: 2
Nachrichten: 123
Hits: 47838
Mit Zitat antworten
Alt 15.03.2009, 22:53   #2
Solstice
Moderator
Punkte: 71.264, Level: 100 Punkte: 71.264, Level: 100 Punkte: 71.264, Level: 100
Levelaufstieg: 0% Levelaufstieg: 0% Levelaufstieg: 0%
Aktivität: 0% Aktivität: 0% Aktivität: 0%
Letzte Erfolge
Auszeichnungen
 
Benutzerbild von Solstice
 
Registriert seit: 10.04.2008
Alter: 36
Beitr?ge: 4.074
Abgegebene Danke: 200
Erhielt 1.331 Danke für 153 Beiträge
Downloads: 2
Uploads: 1
Nachrichten: 731
Renommee-Modifikator:
6014 Solstice genießt hohes AnsehenSolstice genießt hohes AnsehenSolstice genießt hohes AnsehenSolstice genießt hohes AnsehenSolstice genießt hohes AnsehenSolstice genießt hohes AnsehenSolstice genießt hohes AnsehenSolstice genießt hohes AnsehenSolstice genießt hohes AnsehenSolstice genießt hohes AnsehenSolstice genießt hohes Ansehen
Standard

verzeih mir meine hochgradige kurzsichtigkeit...
aber ich seh hier kein fitzelchen C++
__________________
Schmutziges Geschirr schimmelt nicht,
wenn man es einfriert

Solstice ist offline   Mit Zitat antworten Nach oben
Alt 16.03.2009, 00:19   #3
Cerberus
Administrator
 
Benutzerbild von Cerberus
 
Registriert seit: 07.03.2008
Ort: 3. Bit Links hinter dem Kernel
Alter: 49
Beitr?ge: 9.639
Abgegebene Danke: 1.121
Erhielt 4.499 Danke für 458 Beiträge
Downloads: 18
Uploads: 9
Nachrichten: 2258
Renommee-Modifikator:
10 Cerberus genießt hohes AnsehenCerberus genießt hohes AnsehenCerberus genießt hohes AnsehenCerberus genießt hohes AnsehenCerberus genießt hohes AnsehenCerberus genießt hohes AnsehenCerberus genießt hohes AnsehenCerberus genießt hohes AnsehenCerberus genießt hohes AnsehenCerberus genießt hohes AnsehenCerberus genießt hohes Ansehen
Standard

Schau mal Schritt 8
__________________

Fragen gehören ins Forum - und NICHT in mein Postfach !
Ich erteile KEINEN Privatunterricht über e-mail und PN !

Hackliste Br. NV nach Threadstarter u. Aktualität <--+--> Liste Hacks Bereich NV Alphabethisch

Ge?ndert von Cerberus (16.03.2009 um 00:22 Uhr)
Cerberus ist offline   Mit Zitat antworten Nach oben
Alt 16.03.2009, 00:54   #4
Solstice
Moderator
Punkte: 71.264, Level: 100 Punkte: 71.264, Level: 100 Punkte: 71.264, Level: 100
Levelaufstieg: 0% Levelaufstieg: 0% Levelaufstieg: 0%
Aktivität: 0% Aktivität: 0% Aktivität: 0%
Letzte Erfolge
Auszeichnungen
 
Benutzerbild von Solstice
 
Registriert seit: 10.04.2008
Alter: 36
Beitr?ge: 4.074
Abgegebene Danke: 200
Erhielt 1.331 Danke für 153 Beiträge
Downloads: 2
Uploads: 1
Nachrichten: 731
Renommee-Modifikator:
6014 Solstice genießt hohes AnsehenSolstice genießt hohes AnsehenSolstice genießt hohes AnsehenSolstice genießt hohes AnsehenSolstice genießt hohes AnsehenSolstice genießt hohes AnsehenSolstice genießt hohes AnsehenSolstice genießt hohes AnsehenSolstice genießt hohes AnsehenSolstice genießt hohes AnsehenSolstice genießt hohes Ansehen
Standard

Hmm... sieht für mich wie n unorthodoxes C++/PHP gemisch aus??
__________________
Schmutziges Geschirr schimmelt nicht,
wenn man es einfriert

Solstice ist offline   Mit Zitat antworten Nach oben
Alt 16.03.2009, 07:20   #5
TrackerPolizei
Profi
Punkte: 15.522, Level: 80 Punkte: 15.522, Level: 80 Punkte: 15.522, Level: 80
Levelaufstieg: 35% Levelaufstieg: 35% Levelaufstieg: 35%
Aktivität: 25,0% Aktivität: 25,0% Aktivität: 25,0%
Letzte Erfolge
Artikel Benutzer besitzt 1x Profi Benutzer besitzt 1x Ideen-Spender Benutzer besitzt 1x Helfer
 
Benutzerbild von TrackerPolizei
 
Registriert seit: 12.03.2008
Beitr?ge: 986
Abgegebene Danke: 21
Erhielt 1.079 Danke für 154 Beiträge
Themenstarter Themenstarter
Downloads: 32
Uploads: 2
Nachrichten: 123
Renommee-Modifikator:
2349 TrackerPolizei genießt hohes AnsehenTrackerPolizei genießt hohes AnsehenTrackerPolizei genießt hohes AnsehenTrackerPolizei genießt hohes AnsehenTrackerPolizei genießt hohes AnsehenTrackerPolizei genießt hohes AnsehenTrackerPolizei genießt hohes AnsehenTrackerPolizei genießt hohes AnsehenTrackerPolizei genießt hohes AnsehenTrackerPolizei genießt hohes AnsehenTrackerPolizei genießt hohes Ansehen
Standard ...

also wenn du das nicht siehst was hier C++ ist dann schau mal genauer hin ...
ohne dieses C++ würde alles unnütz hier sein ... und wer C++ kennt und versteht weiss was ich damit meine nicht war Cerb
TrackerPolizei ist offline   Mit Zitat antworten Nach oben
Alt 16.03.2009, 08:55   #6
Dark-Destroyer
Profi
Punkte: 5.652, Level: 48 Punkte: 5.652, Level: 48 Punkte: 5.652, Level: 48
Levelaufstieg: 51% Levelaufstieg: 51% Levelaufstieg: 51%
Aktivität: 0% Aktivität: 0% Aktivität: 0%
Letzte Erfolge
Artikel Benutzer besitzt 1x Hilfe Level 3 Benutzer besitzt 1x Ideen-Spender Benutzer besitzt 1x Anfänger Benutzer besitzt 1x Hilfe Level 1 Benutzer besitzt 1x Grundwissen Benutzer besitzt 1x Helfer
 
Benutzerbild von Dark-Destroyer
 
Registriert seit: 30.03.2008
Ort: NRW
Beitr?ge: 543
Abgegebene Danke: 99
Erhielt 34 Danke für 9 Beiträge
Downloads: 13
Uploads: 30
Nachrichten: 0
Renommee-Modifikator:
595 Dark-Destroyer ist einfach richtig nettDark-Destroyer ist einfach richtig nettDark-Destroyer ist einfach richtig nettDark-Destroyer ist einfach richtig nett
Standard

wo füge ich denn den c++ code ein??



--======================================--
--==
Beitrag erstellt: 08:55 ==--
--== automatische Beitragszusammenführung ==--
--======================================--


Dark-Destroyer schrieb nach 6 Minuten und 7 Sekunden:

PS wenn ich es für meine zwecke verwenden würde kann ich sowas entfernen ??

Zitat:

// Database-Script by TP
Denn ich mag sowas nicht gerne in meinen code (also von wenn das ist usw.) aber wenn du drauf bestehst das man das behält mache ich es natürlich auch
__________________
Dark-Destroyer ist offline   Mit Zitat antworten Nach oben
Alt 16.03.2009, 08:56   #7
Cerberus
Administrator
 
Benutzerbild von Cerberus
 
Registriert seit: 07.03.2008
Ort: 3. Bit Links hinter dem Kernel
Alter: 49
Beitr?ge: 9.639
Abgegebene Danke: 1.121
Erhielt 4.499 Danke für 458 Beiträge
Downloads: 18
Uploads: 9
Nachrichten: 2258
Renommee-Modifikator:
10 Cerberus genießt hohes AnsehenCerberus genießt hohes AnsehenCerberus genießt hohes AnsehenCerberus genießt hohes AnsehenCerberus genießt hohes AnsehenCerberus genießt hohes AnsehenCerberus genießt hohes AnsehenCerberus genießt hohes AnsehenCerberus genießt hohes AnsehenCerberus genießt hohes AnsehenCerberus genießt hohes Ansehen
Standard

ich denke mal, das dies keine größere Hürde darstellt ...
aber entscheiden muß er das selber
__________________

Fragen gehören ins Forum - und NICHT in mein Postfach !
Ich erteile KEINEN Privatunterricht über e-mail und PN !

Hackliste Br. NV nach Threadstarter u. Aktualität <--+--> Liste Hacks Bereich NV Alphabethisch
Cerberus ist offline   Mit Zitat antworten Nach oben
Alt 16.03.2009, 09:25   #8
Dark-Destroyer
Profi
Punkte: 5.652, Level: 48 Punkte: 5.652, Level: 48 Punkte: 5.652, Level: 48
Levelaufstieg: 51% Levelaufstieg: 51% Levelaufstieg: 51%
Aktivität: 0% Aktivität: 0% Aktivität: 0%
Letzte Erfolge
Artikel Benutzer besitzt 1x Hilfe Level 3 Benutzer besitzt 1x Ideen-Spender Benutzer besitzt 1x Anfänger Benutzer besitzt 1x Hilfe Level 1 Benutzer besitzt 1x Grundwissen Benutzer besitzt 1x Helfer
 
Benutzerbild von Dark-Destroyer
 
Registriert seit: 30.03.2008
Ort: NRW
Beitr?ge: 543
Abgegebene Danke: 99
Erhielt 34 Danke für 9 Beiträge
Downloads: 13
Uploads: 30
Nachrichten: 0
Renommee-Modifikator:
595 Dark-Destroyer ist einfach richtig nettDark-Destroyer ist einfach richtig nettDark-Destroyer ist einfach richtig nettDark-Destroyer ist einfach richtig nett
Standard

das denke ich auch mal, denn man sieht ja davon nichts udn das selber kann man das auch schnell machen, aber ich habe wenig lust/zeit dafür, denn habe noch immer den scheiß umzug :-(
__________________
Dark-Destroyer ist offline   Mit Zitat antworten Nach oben
Alt 16.03.2009, 09:34   #9
TrackerPolizei
Profi
Punkte: 15.522, Level: 80 Punkte: 15.522, Level: 80 Punkte: 15.522, Level: 80
Levelaufstieg: 35% Levelaufstieg: 35% Levelaufstieg: 35%
Aktivität: 25,0% Aktivität: 25,0% Aktivität: 25,0%
Letzte Erfolge
Artikel Benutzer besitzt 1x Profi Benutzer besitzt 1x Ideen-Spender Benutzer besitzt 1x Helfer
 
Benutzerbild von TrackerPolizei
 
Registriert seit: 12.03.2008
Beitr?ge: 986
Abgegebene Danke: 21
Erhielt 1.079 Danke für 154 Beiträge
Themenstarter Themenstarter
Downloads: 32
Uploads: 2
Nachrichten: 123
Renommee-Modifikator:
2349 TrackerPolizei genießt hohes AnsehenTrackerPolizei genießt hohes AnsehenTrackerPolizei genießt hohes AnsehenTrackerPolizei genießt hohes AnsehenTrackerPolizei genießt hohes AnsehenTrackerPolizei genießt hohes AnsehenTrackerPolizei genießt hohes AnsehenTrackerPolizei genießt hohes AnsehenTrackerPolizei genießt hohes AnsehenTrackerPolizei genießt hohes AnsehenTrackerPolizei genießt hohes Ansehen
Standard ..

na klar kannst es raus machen .... ist ein support board hier und da hat copyright nichts zu melden ^^

den C++ code musst halt in deine datei rein machen die du sichern willst das kein bruteforce kommt
TrackerPolizei ist offline   Mit Zitat antworten Nach oben
Alt 16.03.2009, 11:39   #10
MPL
Erfahrener Benutzer
Punkte: 2.528, Level: 30 Punkte: 2.528, Level: 30 Punkte: 2.528, Level: 30
Levelaufstieg: 52% Levelaufstieg: 52% Levelaufstieg: 52%
Aktivität: 0% Aktivität: 0% Aktivität: 0%
Letzte Erfolge
Artikel Benutzer besitzt 1x Anfänger Benutzer besitzt 1x Hilfe Level 1 Benutzer besitzt 1x Spamer
 
Benutzerbild von MPL
 
Registriert seit: 15.03.2008
Ort: Mond
Alter: 35
Beitr?ge: 270
Abgegebene Danke: 1
Erhielt 16 Danke für 5 Beiträge
Downloads: 4
Uploads: 0
Nachrichten: 3
Renommee-Modifikator:
338 MPL ist ein LichtblickMPL ist ein LichtblickMPL ist ein LichtblickMPL ist ein LichtblickMPL ist ein LichtblickMPL ist ein Lichtblick
Standard

son gemisch isn müll sry ich würde das ganze doch lieber per mono machen... dafür is ja eig mod_mono und c# is mist man kann den code "zurück compilieren" ich hatte dammals was ähnliches und vor allem größeres für meinen ex tracker ein komplettes user frontend für user in c# für torrent download/torrent suche/torrent browse/pm system und andere kleinigkeiten aber joa... aufgegeben kamm net so gut an und war nur arbeit ^^
__________________

MPL ist offline   Mit Zitat antworten Nach oben
Antwort


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, G?ste: 1)
 

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beitr?ge zu antworten.
Es ist Ihnen nicht erlaubt, Anh?nge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beitr?ge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.

Gehe zu


Alle Zeitangaben in WEZ +1. Es ist jetzt 07:23 Uhr.


Powered by vBulletin® Version 3.8.9 (Deutsch)
Copyright ©2000 - 2024, vBulletin Solutions, Inc.
Template-Modifikationen durch TMS