CronJob-Service
bei SELFPHP mit ...
|
+ minütlichen Aufrufen
+ eigenem Crontab Eintrag
+ unbegrenzten CronJobs
+ Statistiken
+ Beispielaufrufen
+ Control-Bereich
Führen Sie mit den CronJobs von
SELFPHP zeitgesteuert Programme
auf Ihrem Server
aus. Weitere Infos
|
:: Anbieterverzeichnis ::
Globale Branchen
Informieren Sie sich über ausgewählte Unternehmen im Anbieterverzeichnis von SELFPHP
:: Newsletter ::
Abonnieren Sie hier den kostenlosen
SELFPHP Newsletter!
|
PHP Grundlagen Hier kann über grundlegende Probleme oder Anfängerschwierigkeiten diskutiert werden |
20.12.2007, 19:08:52
|
Anfänger
|
|
Registriert seit: Dec 2007
Beiträge: 5
|
|
Mdb und php
Hi, ich habe geplant ein script zu schreiben welches auf eine mdb zugreift. Das script soll die aufgabe übernehmen user zu erstellen bzw eine Register funktion bereit zu stellen. Mein problem ist dass das Script nicht prüft ob der Nick\Loginname schon vorhanden ist und somit einfach dazu schreibt. So ist keine einwandfreie benutzung gewährleistet.... Ich weiß nicht wie ich es ändern kann, eigentlich sollte es ja schon drin sein. Währe nett wenn sich das jemand mal angucken könnte. Danke!
Code:
<?php
// Connects to your Database
$connect = odbc_connect('DRIVER=Microsoft Access Driver (*.mdb); DBQ=C:\Dokumente und Einstellungen\benni\Lokale Einstellungen\Temp\Advanced_M14681210162002\Server\mdbAccess.mdb','','') or die(odbc_error());
//This code runs if the form has been submitted
if (isset($_POST['submit'])) {
//This makes sure they did not leave any fields blank
if (!$_POST['username'] | !$_POST['pass'] | !$_POST['pass2'] ) {
die('Du musst alle felder ausfüllen');
}
// checks if the username is in use
if (!get_magic_quotes_gpc()) {
$_POST['username'] = addslashes($_POST['username']);}
$usercheck = $_POST['username'];
$check = "SELECT Username FROM users WHERE Username = '$usercheck'";
$check2 = @odbc_fetch_row($check);
//if the name exists it gives an error
if ($check != 0) {
die('Sorry, the username '.$_POST['username'].' is already in use.');}
// this makes sure both passwords entered match
if ($_POST['pass'] != $_POST['pass2']) {
die('Your passwords did not match. ');}
// here we encrypt the password and add slashes if needed
if (!get_magic_quotes_gpc()) {
$_POST['pass'] = addslashes($_POST['pass']);
$_POST['username'] = addslashes($_POST['username']);}
// now we insert it into the database
$insert = "INSERT INTO users (Username, DisplayName, Password) VALUES ('".$_POST['username']."', '".$_POST['username']."', '".$_POST['pass']."')";
$add_member = odbc_exec($connect,$insert);
?>
<!-- Now we let them know if their registration was successful -->
<h1>Registered</h1>
<p>Thank you, you have registered - you may now login</a>.</p>
<?php
}
else
{
?>
<!-- This is what they see before they have registered -->
<form action="<?php echo $_SERVER['PHP_SELF']; ?>" method="post">
<table border="0">
<tr><td>Username:</td><td>
<input type="text" name="username" maxlength="60">
</td></tr>
<tr><td>Password:</td><td>
<input type="password" name="pass" maxlength="10">
</td></tr>
<tr><td>Confirm Password:</td><td>
<input type="password" name="pass2" maxlength="10">
</td></tr>
<tr><th colspan=2><input type="submit" name="submit" value="Register"></th></tr> </table>
</form>
<?php
}
?>
|
20.12.2007, 19:31:07
|
|
Administrator
|
|
Registriert seit: Jul 2004
Beiträge: 3.707
|
|
AW: Mdb und php
PHP-Code:
$check = "SELECT Username FROM users WHERE Username = '$usercheck'";
//Hier fehlt was!!
$check2 = @odbc_fetch_row($check);
odbc_fetch_row() stellt eine Zeile der von odbc_do()/odbc_exec() zurückgegeben Daten bereit. Nachdem odbc_fetch_row() aufgerufen wurde, können die Felder dieser Zeile mit odbc_result() genutzt werden.
__________________
Gruss vt1816
Erwarte nicht, dass sich jemand mehr Mühe mit der Antwort gibt als Du Dir mit der Frage.
. . . . . Feedback wäre wünschenswert
Ich werde keinen privaten 1:1 Support leisten, außer ich biete ihn ausdrücklich an.
Ansosnten gilt: Hilfe ausserhalb dieses Thread (PN, WhatsApp, Skype, Mail, ICQ, etc...) nur per Barzahlung oder Vorauskasse!
Wenn man sich selbst als "Noob" bezeichnet, sollte man die Finger davon lassen.
Wenn man gewillt ist daran etwas zu ändern, lernt man Grundlagen!
|
20.12.2007, 20:25:12
|
Anfänger
|
|
Registriert seit: Dec 2007
Beiträge: 5
|
|
AW: Mdb und php
Ok, schonmal danke das du es dir angeschaut hast. Ich habe nur das Problem das ich mich nicht mit php auskenne und es daher auch nicht fixen kann.... Könttest du es bitte verbessern? Währe dir echt dankbar. MfG
|
20.12.2007, 20:44:57
|
SELFPHP Guru
|
|
Registriert seit: Jan 2004
Ort: Leipzig
Beiträge: 4.549
|
|
AW: Mdb und php
Zitat:
Hi, ich habe geplant ein script zu schreiben welches auf eine mdb zugreift.
|
Zitat:
Ich habe nur das Problem das ich mich nicht mit php auskenne und es daher auch nicht fixen kann.... Könttest du es bitte verbessern?
|
Willst du uns veräppeln oder widersprichst du dir unabsichtlich?
|
20.12.2007, 20:47:15
|
Senior Member
|
|
Registriert seit: Sep 2007
Ort: Potsdam
Alter: 55
Beiträge: 1.020
|
|
AW: Mdb und php
Wollte ich auch gerade schreiben ;)
__________________
Wat der Bauer nich kennt, dit frisster nich.
|
20.12.2007, 20:54:58
|
|
Administrator
|
|
Registriert seit: Jul 2004
Beiträge: 3.707
|
|
AW: Mdb und php
PHP-Code:
$sql = "SELECT Username FROM users WHERE Username = '$usercheck'";
$check = odbc_exec($connect, $sql);
$check2 = odbc_fetch_row($check);
Mehr gibt es in einschlägigen Tut's, bei Goooooooogle oder nach sich nicht mehr widersprechenden Aussagen ...
__________________
Gruss vt1816
Erwarte nicht, dass sich jemand mehr Mühe mit der Antwort gibt als Du Dir mit der Frage.
. . . . . Feedback wäre wünschenswert
Ich werde keinen privaten 1:1 Support leisten, außer ich biete ihn ausdrücklich an.
Ansosnten gilt: Hilfe ausserhalb dieses Thread (PN, WhatsApp, Skype, Mail, ICQ, etc...) nur per Barzahlung oder Vorauskasse!
Wenn man sich selbst als "Noob" bezeichnet, sollte man die Finger davon lassen.
Wenn man gewillt ist daran etwas zu ändern, lernt man Grundlagen!
|
20.12.2007, 21:05:05
|
Anfänger
|
|
Registriert seit: Dec 2007
Beiträge: 5
|
|
AW: Mdb und php
Also um das mal aufzuklären, ja ich habe es vor gehabt, bin aber gescheitert. Man kann es ja trotzdem ohne kenntnisse probieren. Ps. selbstverständlich hab ich gegoogelt aber nichts gefunden was mir helfen könnte. Dieses php script ist nurnoch der letzte teil meines projekts mit dem ich nicht klar komme, dann hat nen kumpel dieses script gefunden nur kommt er nich so ganz klar, daher hab ich das für ihn gepostet.
Geändert von DoctorDeath (20.12.2007 um 21:06:25 Uhr)
|
20.12.2007, 21:37:34
|
|
Administrator
|
|
Registriert seit: Jul 2004
Beiträge: 3.707
|
|
AW: Mdb und php
Hast Du bzw. hat Dein Kumpel den Hinweis (Hilfe) schon verarbeitet?
Ja -> Noch Fragen oder gar Fehlermeldungen?
Nein -> dann macht es erst mal und meldet Euch dann wieder.
__________________
Gruss vt1816
Erwarte nicht, dass sich jemand mehr Mühe mit der Antwort gibt als Du Dir mit der Frage.
. . . . . Feedback wäre wünschenswert
Ich werde keinen privaten 1:1 Support leisten, außer ich biete ihn ausdrücklich an.
Ansosnten gilt: Hilfe ausserhalb dieses Thread (PN, WhatsApp, Skype, Mail, ICQ, etc...) nur per Barzahlung oder Vorauskasse!
Wenn man sich selbst als "Noob" bezeichnet, sollte man die Finger davon lassen.
Wenn man gewillt ist daran etwas zu ändern, lernt man Grundlagen!
|
20.12.2007, 21:47:36
|
Anfänger
|
|
Registriert seit: Dec 2007
Beiträge: 5
|
|
AW: Mdb und php
Ja sie ist verarbeitet, allerdings kommt jetzt immer die meldung das der username schon vorhanden sei, egal was ich eingebe. Habe es wie folgt eingebaut (kann ja sein das ich das auch falsch gemacht habe) :
Code:
<?php
// Connects to your Database
$connect = odbc_connect('DRIVER=Microsoft Access Driver (*.mdb); DBQ=C:\mdbAccess.mdb','','') or die(odbc_error());
//This code runs if the form has been submitted
if (isset($_POST['submit'])) {
//This makes sure they did not leave any fields blank
if (!$_POST['username'] | !$_POST['pass'] | !$_POST['pass2'] ) {
die('Du musst alle felder ausfüllen');
}
// checks if the username is in use
if (!get_magic_quotes_gpc()) {
$_POST['username'] = addslashes($_POST['username']);}
$usercheck = $_POST['username'];
$sql = "SELECT Username FROM users WHERE Username = '$usercheck'";
$check = odbc_exec($connect, $sql);
$check2 = odbc_fetch_row($check);
//if the name exists it gives an error
if ($check != 0) {
die('Sorry, the username '.$_POST['username'].' is already in use.');}
// this makes sure both passwords entered match
if ($_POST['pass'] != $_POST['pass2']) {
die('Your passwords did not match. ');}
// here we encrypt the password and add slashes if needed
if (!get_magic_quotes_gpc()) {
$_POST['pass'] = addslashes($_POST['pass']);
$_POST['username'] = addslashes($_POST['username']);}
// now we insert it into the database
$insert = "INSERT INTO users (Username, DisplayName, Password) VALUES ('".$_POST['username']."', '".$_POST['username']."', '".$_POST['pass']."')";
$add_member = odbc_exec($connect,$insert);
?>
<!-- Now we let them know if their registration was successful -->
<h1>Registered</h1>
<p>Thank you, you have registered - you may now login</a>.</p>
<?php
}
else
{
?>
<!-- This is what they see before they have registered -->
<form action="<?php echo $_SERVER['PHP_SELF']; ?>" method="post">
<table border="0">
<tr><td>Username:</td><td>
<input type="text" name="username" maxlength="60">
</td></tr>
<tr><td>Password:</td><td>
<input type="password" name="pass" maxlength="10">
</td></tr>
<tr><td>Confirm Password:</td><td>
<input type="password" name="pass2" maxlength="10">
</td></tr>
<tr><th colspan=2><input type="submit" name="submit" value="Register"></th></tr> </table>
</form>
<?php
}
?>
Geändert von DoctorDeath (20.12.2007 um 21:48:33 Uhr)
|
20.12.2007, 21:55:51
|
|
Administrator
|
|
Registriert seit: Jul 2004
Beiträge: 3.707
|
|
AW: Mdb und php
PHP-Code:
if ($check != 0) {
die('Sorry, the username '.$_POST['username'].' is already in use.');}
muß heißen
PHP-Code:
if ($check2 != 0) {
die('Sorry, the username '.$_POST['username'].' is already in use.');}
Benutze bitte zukünftig den PHP-Tag wenn es sich um PHP-Code handelt!
__________________
Gruss vt1816
Erwarte nicht, dass sich jemand mehr Mühe mit der Antwort gibt als Du Dir mit der Frage.
. . . . . Feedback wäre wünschenswert
Ich werde keinen privaten 1:1 Support leisten, außer ich biete ihn ausdrücklich an.
Ansosnten gilt: Hilfe ausserhalb dieses Thread (PN, WhatsApp, Skype, Mail, ICQ, etc...) nur per Barzahlung oder Vorauskasse!
Wenn man sich selbst als "Noob" bezeichnet, sollte man die Finger davon lassen.
Wenn man gewillt ist daran etwas zu ändern, lernt man Grundlagen!
|
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.
HTML-Code ist aus.
|
|
|
Alle Zeitangaben in WEZ +2. Es ist jetzt 13:36:14 Uhr.
|