Was ist bei deiner Tabelle denn der Primärschlüssel? Normalerweise ist es ein Feld `id` vom typ int, das auf auto_increment und primary key gesetzt ist. Der Primärschlüssel dient dazu, jeden Eintrag eindeutig zu identifizieren. Das Feld erhöht sich bei jedem Eintrag selber um eins, es braucht kein Wert über PHP dafür gesetzt zu werden.
Beiträge von Afrael
-
-
Ad 1: phpBB steht laut Wikipedia unter GPL, welche kommerzielle Nutzung ausdrücklich erlaubt. Es könnte höchstens sein, dass dein Webspace-Anbieter keine Werbung erlaubt, was aber ungewöhnlich wäre.
-
-
Die Spalten ja und nein kannst du thoretisch direkt in ein Feld vom Typ boolean verschmelzen. Hier hast der User ja nur zwei Möglichkeiten. Du nennst die Spalte zum Beispiel wohlergehen. Wenn es ihm gut geht, trägst du eine 1 ein, sonst eine 0.
Zitat von SinnlosSAm einfachsten vielleicht, trotzdem ist davon abzuraten.
Mein Fehler. Ich ging davon aus, dass nichts schlimmes passieren könnte, wenn er keine Cookies verwendet. Allerdings könnte man da auch noch andere Sachen mit einstellen, wie mir gerade auffällt, zum Beispiel Hits für eine andere Webseite sammeln.Wo wir schon dabei sind, von der Ausgabe des SQLs und des SQL-Errors im Klartext ist auch generell abzuraten. Angenommen, der Benutzer schafft es, einen SQL-Error zu erzeugen, in dem auch Javascript vorkommt. Beispiel:
Du hast ein Feld, das einen Zahlentyp erwartet. Der Benutzer schmuggelt einen String ein (wie, will ich an dieser Stelle nicht ausführen). Dann wirft deine Anwendung einen SQL-Error aus, in dem der eingeschmuggelte String ungefiltert ausgegeben wird.
Schlußfolgerung: html_entities() auf $sql und mysql_error() anwenden und dann erst ausgeben. -
infügen.
ICh habe ein paar kleine Probleme, und habe dazu aber auch nirgendst im web tutorials gefunden. UND NEIN, ich möchte kein vorgefertigtes tool verwenden um die umfrage zu erstellen, so lern ich ja nichts dazu.
Lobenswerte EinstellungCode<form method=post action="XXX.php"> // Bei action muss ich ja auf eine PHP seite verweisen, aber welche, bzw. was muss ich bei der seite machen auf die ich verweiße?
In diesem Fall ist es wohl am einfachsten, auf das Script selber zu verweisen, mit <form method=post action="<?php echo $_SERVER['PHP_SELF'];?>">
Das verweist auf den Namen des Scripts, das du gerade ausführst.
Ich nehme an, das benutzt du zum Debuggen? Dafür kannst du var_dump($_POST) benutzenCodeif (!mysql_query("INSERT INTO umfrage [COLOR='Red'](`spalte1`, `spalte2`,`spalte3`)[/COLOR] VALUE[COLOR='Red']S[/COLOR]('wert_in_erste_spalte', 'wert_in_zweite_spalte', 'wert_in_dritte_spalte')"))
Außerdem das, was thilda sagt, beachten. -
Warum willst du das unbedingt so machen? Kopier dir doch einfach den Wert in eine neue Variable.
final int foo = eigeneklasse[arraywert].variable; -
Code
Alles anzeigen<a href="javascript:set_groesse ('.$10_width.', '.$10_height.')">+10%</a><br> <a href="javascript:set_groesse ('.-$10_width.', '.-$10_height.')">-10%</a> <script language='javascript' type='text/javascript'> <!-- // function set_groesse (width, height) { document.getElementById ('team1').style.width = (parseInt(document.getElementById ('team1').style.width) + width)+'px'; document.getElementById ('team1').style.height = (parseInt(document.getElementById ('team1').style.height) + height)+'px'; } // --> </script>
Müsste jetzt so funktionieren. Von Verwendung von Sonderzeichen (ß) in Funktions- oder Variablennamen ist übrigens generell abzuraten, gibt evtl. Probleme.
Edit: Sorry, hab das ganze an einem anderen Beispiel getestet. Statt 'team1' muss es natürlich 'game' heißen. Und synaptic unter mir hat natürlich recht.
Evtl auch interessant: Dollar-Funktion.
Code
Alles anzeigenfunction $() { var elements = new Array(); for (var i = 0; i < arguments.length; i++) { var element = arguments[i]; if (typeof element == 'string') element = document.getElementById(element); if (arguments.length == 1) return element; elements.push(element); } return elements; }
Dann kannst du statt document.getElementById einfach $ schreiben.
Beispiel: $('game'). -
In PHP ist != gebräuchlicher. Ich persönlich finds weniger verwirrend, das so zu schreiben:
if ($user_ID != "")
weil sich das für mich logisch besser liest ("wenn Userid ungleich nix" statt "wenn nix ungleich Userid"). Man kann übrigens auch mit empty() auf Leere prüfen. -
Herrje, wirft das denn keinen Syntaxfehler aus?
PHP
Alles anzeigen<?php if ('' <> $user_ID) { ?> <li> <?php echo ($user_login . " olarak Kayitlisiniz. Cikis yapmak icin --> "); ?> <a href="http://www.diziler.kalitelidiziler.spacequadrat.de/wp-login.php?action=logout&_wpnonce=7aa3c56572&redirect_to=/index.php">Logout</a> <?php }else{ ?> <li><form id="loginform" method="post" action="http://www.diziler.kalitelidiziler.spacequadrat.de/wp-login.php" name="loginform"> <div> <label>Benutzername: <br> <input name="log" id="log" value="" size="20" tabindex="7" type="text"> </label> <br> <label>Passwort: <br> <input name="pwd" id="pwd" value="" size="20" tabindex="8" type="password"> </label> <br> <input name="submit" id="submit" value="Anmelden »" tabindex="9" type="submit"> <a href="http://www.diziler.kalitelidiziler.spacequadrat.de/wp-login.php?action=register">Registrieren</a> <input name="redirect_to" value="/index.php" type="hidden"> </div></li>; <?php } ?>
So müsste es zumindest syntaktisch stimmen. Ein Tipp für die Zukunft, "klappt irgendwie nicht" ist nie eine gute Problembeschreibung (nicht böse gemeint ;))
-
Wenn du des Englischen einigermaßen mächtig bist, kannst du hier gucken:
http://codex.wordpress.org/Function_Refer…currentuserinfo$display_name oder $user_login scheint das zu sein, was den Usernamen enthält.
-
-
Ich hoffe, das ist das richtige Forum für meine Frage.
Bei einer Diskussion mit The User hatte ich mir überlegt, dass es sinnvoll wäre, einen Thread zu haben, wo häufige Sicherheitslücken bei der Programmierung von Webseiten aufgegriffen werden (zum Beispiel XSS, register_globals/import_request_variables, SQL Injection...). Haltet ihr das für sinnvoll? Wie könnte man das am besten realisieren? Inwiefern dürfte ich hier zum Beispiel Informationen posten, die als Anleitung fürs Erlernen der Techniken missbraucht werden könnten?
-
Ach, jetzt verstehe ich das ganze erst.
Deine Funktion will zwei Zahlen von dir haben. "40px" ist jedoch eine Zeichenkette. D.h. es wird die Größe von dem Element genommen und versucht, dazu die Zeichenkette "40px" zu addieren, logisch, dass das nicht geht.Kurz ausgedrückt, mach das px in
<a href="javascript:set_groeße ('.$10_width.px.', '.$10_height.px.')">+10%</a><br>
weg. -
Zu md5, man sollte nicht einfach "nur" md5-verschlüsseln, sondern einen geeigneten Salt verwenden.
-
Wo soll denn die $10_width-Variable herkommen? Steckt da ein PHP-Script dahinter, das das HTML erzeugt? Wenn ja, poste das mal bitte.
Ansonsten überprüf nochmal die Syntax, '.-$10_width.px.' sieht irgendwie falsch aus, ich denke, das Apostroph müsste vor das px.Übrigens:
macht genau das gleiche wieCodedocument.getElementById ('game').style.width = document.getElementById ('game').style.width + width;
und ist kürzer.
-
Du scheinst register_globals zu benutzen, d.h., dass Variablen, die über die URL übergeben werden, direkt in deinem Script eingesetzt werden. Das sollte man niemals nie machen. Jemand könnte über die URL deine internen Variablen überschreiben und somit dein Script ordentlich durcheinanderbringen. Benutz stattdessen
ini_set("register_globals","Off");
$meldung=$_GET['meldung'];
usw.Außerdem solltest du genau sowas
nicht machen. Informiere dich mal über XSS. Ich schlage vor, dass du jeder Fehlermeldung eine Nummer zuweist und diese über GET-Parameter übergibst. Anschließend pickst du anhand des Errorcodes die Meldung aus einem Array.
In bestellung.php:
Du willst doch sicherlich nicht, dass alle Einträge in allen Warenkörben gelöscht werden, oder?
Außerdem dürfen Feldnamen, meine ich, keine Bindestriche enthalten, nimm lieber Unterstriche.Zitat"INSERT INTO bestellungen (bestellid,artikelid,kundennummer,anzahl) SELECT artikelid, kundennummer FROM warenkorb WHERE warenkorb.kundennummer=".$_SESSION['nummer']"
Wie soll das gehen, was auch immer das soll?
warenkorb.phpPHP$sql = "select name, preis, anzahl from artikel, warenkorb where warenkorb.kundennummer=".$_SESSION['nummer']." AND artikel.id=warenkorb.artikel-id";
wird, meine ich, so nicht funktionieren. Was du suchst, ist ein INNER JOIN.
Ich glaube, bis auf ein paar kleine HTML-Details wars das. -
Überprüf mal deine Firewall-Einstellungen. Ich hatte letztens den umgekehrten Fall, nämlich dass ich Firefox in ZoneAlarm aus Versehen verboten habe, aufs Internet zuzugreifen, und konnte dann nur über Internet Explorer rein.
-
@TheUser:
[color=blue[b][/b]]
Einfach dafür sorgen, dass der Regex fürs Parsen nicht mehr zutrifft. Hier hab ich einen leeren b-Tag vor die schließenede Klammer des color-Tags gesetzt.
[/color[COLOR=Black][/COLOR]] -
Hallo,
Und ob es ebenfalls eine Funktion gibt, die den Inhalt einer Textbox dahingehend
prüfen kann, ob das Format nach Veränderung noch eingehalten wird.
Eine Javascript-Funktion schreiben, die bei onchange und onkeyup (und evtl noch bei ein paar anderen) ausgelöst wird und mit regulären Ausdrücken arbeitet. Regulären Ausdruck für Datetime müsste es im Internet geben. -
Du speicherst die Anzahl der Downloads ja in einer Datenbank, nehme ich an. Dann musst du aus der Datenbank die Anzahl wieder auslesen lassen und die Links halt nur anzeigen, wenn das Ergebnis kleiner gleich 4 ist. Außerdem musst du in das Download-Script das gleiche einbauen, nämlich dass die Datei dann nicht zum Download angeboten wird (es wird eben kein Content-Disposition-header geschickt). Wenn das Verzeichnis, in dem die Dateien sind, dem User bekannt ist, musst du irgendwie mit .htaccess rumwerkeln bzw einfach ein neues Verzeichnis wählen.