Hi,
ich möchte mich nun bei http://www.freesql.org/ anmelden.
Mein Problem dabei ist, dass ich nicht weiß, was ich bei "Account Creation code" angeben muss.
Hat vll. jemand mit dem ganzen schon Erfahrung?
Hi,
ich möchte mich nun bei http://www.freesql.org/ anmelden.
Mein Problem dabei ist, dass ich nicht weiß, was ich bei "Account Creation code" angeben muss.
Hat vll. jemand mit dem ganzen schon Erfahrung?
--
Ich hab einfach irgendwas eingegeben. Scheint dann sowas ähnliches wie ne "Kunden" Nummer zu sein. Geht also auch so, tipp ne Nummer ein und die restlichen Daten und fertig. ^^Zitat
thx!
dann kann ich endlich mal mit meinem Newssystem weitermachen![]()
--
Wie greife ich jetzt eigentlich genau auf eine solche Datenbank zu, also, welche Adresse ist das genau?
und was genau kommt dann in
$host, $user, $pass und $db
wenn
$link = mysql_connect($host, $user, $pass);
mysql_select_db($db) or die("Auswahl der Datenbank fehlgeschlagen");
ist?
edit: sry, hat sich erledigt![]()
--
Geändert von Niji-chan (09.10.2005 um 15:52 Uhr)
soa, ich kann jetzt rein theoretisch drauf zugreifen...
ich bekomme folgende Fehlermeldung:
Woran kann das liegen?Zitat
vor allem bin ich mir bei der korrekten Abfrage noch unsicher...
wahrscheinlich müsste da eher
hin?
--
Die While-Schleife erscheint mir unnötig.
So sähe das bei mir aus:
Achte darauf wie ich die Apostrophe gesetzt hab.
Außerdem hab ich eine andere Struktur gewählt, deine verschachtelte Abfrage erschien mir unnötig kompliziert und Performanceverschwendend.
Desweiteren lass ich durch das Jokerzeichen * alle Felder der Tabelle myblog ansprechen. Das erscheint mir sinnvoll, da ich denke, das du vor hast ein Blog zu scripten. Ich gehe davon aus das ein Blogeintrag nicht nur aus einem Titel, sondern auch aus weiteren feldern bestehen wird.
$tabelle ist übrigens unglücklich gewählt. Das ist nicht eine Tabelle die du auswählst, sondern eine Datenbank.
Eine Datenbank ist eine Ansammlung von Tabellen (z.B. myblog) welche wiederrum aus Spalten (Feldern) und Zeilen (Datensätzen) bestehen.
Datenbanken werden vom Datenbankserver (MySQL z.B.) verwaltet und zugänglich gemacht.
Du musst also zuerst die Datenbank wählen. Ein MySQL-User kann auch mehrere Datenbanken besitzen, deshalb musst du ind einem Script definieren auf welche deiner Datenbanken zu zugreifen willst. Das geschieht mit mysql_select_db().
Dein Fehler lag vermutlich in den falsch gesetzten Apostrophes.
ok, jetz funktioniert alles...
um mehrere Blogeinträge anzuzeigen, benutze ich jetz eine if-Abfrage. klappt soweit.
manchmal dauert das Laden des Inhalts zwar etwas, aber das liegt wohl eher an freesql...
Momentan stehen zwar nur Testeinträge drin, aber hier mal der Link:
http://www.simghost.de/skizzen/home.htm
(das soll keine Werbung sein)
Das Menü wird auch noch abgeändert.
Jetzt möchte ich ein Eingabescript schreiben, wodrauf man nur zugreifen kann, wenn man Passwort und Benutzernamen kennt.
Diesbezüglich würde ich mal gerne wissen, was es da für "sichere" Möglichkeiten gibt.
--
Für ein Blog reicht ein .htaccess-Schutz. Dazu erstellst du einen neuen Ordner auf deinem Webspace in welchem du die Scripte packst über die man das Blog verwalten können soll.Zitat von Niji-chan
In den Ordner hinzu packst du dann die .htaccess und die .htpasswd-Datei wie auf SelfHTML beschrieben.
Für Redaktionelle Systeme mit mehreren Mitarbeitern würd ich ein Sessionsystem empfehlen. Aber das ist hier IMO too much.
EDIT: Hmja. Im SelfHTML-Tut ist scheinbar keine Erwähnung der .htpasswd-Datei.
Hier ein Beispiel:
Zitat von .htaccess-Datei
Das Kennwort verschlüsselt bekommst du im SelfHTML-Tut.Zitat von .htpasswd-Datei
ok, ich machs jetzt mit .htaccess
Neues Problem:
Ich möchte, dass meine Leser die einzelnen Beiträge kommentieren können.
Die Comments kann ich unter meinem jeweiligen Beitrag ohne Probleme erscheinen lassen, aber erstmal müssen die diese ja auch verfassen können.
Ich möchte dazu ein Pop-Up öffnen lassen, nachdem man auf "Comment verfassen" geklickt hat, in dem man dann Namen und Nachricht hinterlassen kann.
Soweit so gut. An der Eingabe an sich scheitert es ja auch nicht, aber wie übergebe ich jetzt per Link die $id vom jeweiligen Beitrag?
Muss ich da etwa mit einem Formular arbeiten, oder wie geht das am Besten?
So, sieht der Code momentan aus.
Ich möchte also jetzt die Möglichkeit haben, zu diesem Eintrag speziell einen Kommentar zu hinterlassen.
Und so sieht die Ausgabe der Comments aus:
--
Ohne dir auf die Füße treten zu wollen: Weißt du schon etwas mit EGPCS-Variablen anzufangen?Zitat von Niji-chan
Die Übergabe von Variablen an ein Script kann auf unterschiedlichen Wegen erfolgen:
Enviroment: Sowas wie $REMOTE_ADDR um die IP eines Clients auszulesen, oder $HTTP_REFERER welche den Referer enthält.
Get: Das Dingen was du suchst. GET ist die Methode der Wahl wenn man Variablen mit der URL übergeben möchte. In der URL schaut das dann z.B. so aus: http://domain.tld/script.php?variabl...ar=nocheinwert
Innerhalb eines Scripts greift man eine solche Variable dann so ab:
echo $_GET[variable]." und ".$_GET[nocheinevar];
oder auch einfach:
echo $variable." und ".$nocheinevar;
wenn register_globals öhm... on sind... war das glaub ich.
Post: Die Post Variablen sind jene die per Formular übergeben werden. Aber die kennst du bereits. Der superglobale Arry dafür ist: $_POST[variable]
Cookie: Joa, auch Cookies sind im Grunde nur ein Weg um ein Variable/Wert-Paar an ein Script zu übergeben.Der superglobale Array: $_COOKIE[variable]
Server: Die Server-Variablen enthalten Serverseitige Informationen wie z.B. $_SERVER[PHP_SELF] bzw. $PHP_SELF welches den Dateinamen des gerade ausgeführten Scripts enthält.
Hier das Beispiel eines Codes:
Das hier in den <head>-Bereich deiner Scriptseite:
<a href="javascriptopup('script.php?site=topnews')">
Modifizier evtl. noch die Zeile ind er ich $id definiere. Ich hab keine Ahnung ob dein Feld in der DB tatsächlich id heißt und ob das Fels im Query überhaupt auch mit abgefragt wird.
Ahja. Ich möcht dir auch noch sagen, dass deine Query-Auswertung mit der for-Schleife und der Verwendung von mysql_result() innerhalb einer Schleife, sehr umständlich ist. Das ginge eleganter. Wenn du interessiert bist an der eleganteren Lösung, geb bescheid.![]()
![]()
Ich habs mit Get hinbekommen... vielen lieben Dank!
Morgen gibts dann den ersten richtigen Eintrag in meinem Blog zu bewundern
Ok, einen Minibug habe ich:
Wenn ich nur einen Kommentar bei einem Beitrag habe, zeigt der immer 2 Kommentare an, wobei der eine leer ist![]()
(Code steht noch im letzten Posting)
--
Gut, einen Moment büdde. Ich muss eben deinen Code auswerten und umscripten.Zitat von Niji-chan
Edit folgt...
EDIT:
Ich hab dir bereits mal die verwendung von mysql_fetch_array() anstelle mysql_result() nahegelegt AFAIR. Besonders wenn man mehrere Datensätze ausgeben muss, ist mysql_fetch_array() schneller.
Hier dein modifizierter Code:
Du siehst das es eine ganze Ecke weniger Code ist plus es ist Performanceschohnender.
Damit ist dann auch gleich der Bug mit dem leeren Eintrag weg denk ich.
thx! funktioniert einwandfrei
kann gut sein, dass du mir das schon mal gesagt hast ^^
Ich bastel dann mal weiter...
EDIT:
och menno... jetz habe ich versucht beides mal mit mysql_fetch_array zu arbeiten, dabei kam bei mir jetz folgendes raus:Fehler:Ich hab doch die Anführungszeichen nich falsch gemacht, oder?Zitat
( $query2 = "SELECT * FROM `blogcomments` WHERE `beitrags_id` = ".$id." ORDER BY `id` DESC"
Edit²:
noch immer ohne Lösung - weitere Frage:
Wie kann ich machen, dass HTML in Textarea-Eingaben nicht akzeptiert wird?
--
Geändert von Niji-chan (13.10.2005 um 14:50 Uhr)
Hmh... ich mach das mit den Quotes immer anders:Zitat von Niji-chan
Versuchs mal so. Wenns nicht geht, meld dich noch mal.
schau dir mal die Funktionen html_entities() und html_specialchars() an.Zitat von Niji-chan
Wähle von den beiden dann die die dir am ehesten gefällt und jag durch sie den Output bevor du ihn per Echo ausgibst.
z.B. so:
Die Eingabe wird zwar akzeptiert, allerdings werden typische HTML-Codezeichen in ihre Umschreibungen umgewandelt.
z.B. > wird zu >
So ist es hier im Forum auch. Schreibe ich HTML-Code, wird er in anzeigbaren Text umgewandelt.
jetzt wird das "WHERE" nicht mitgelesen, also, es wird nicht gefiltert angezeigt.
also werden alle Comments unter jedem Beitrag angezeigt, egal, zu welchem Beitrag sie eigentlich gehören...
ist falsch
funktioniert hingegen
nur mal so nebenbei...
--
Hmh...Zitat von Niji-chan
Schau mal ob $id wirklich im Script ankommt.
Mach mal irgendwo
echo $id;
im Script und dazu auch noch zur Kontrolle.
echo $_GET[id];
Wenn beides geht, musst du warten bis dir einer der anderen Mituser hilft. Denn so funktionierts bei mir tadellos auf den unterschiedlichsten Systemen.
Wird nur $_GET[id] ausgegeben, ist bei dir register_globals auf off. Womit du mit den superglobalen Arrays arbeiten musst (siehe meinen Post über die EGPCS-Variablen weiter oben).
Wird bei beiden nichts ausgegeben: Hmja... dann hast du vermutlich die URL im Popuplink falsch gestaltet oder die Variable heißt gar nicht $id bzw $_GET[id].
Überprüf außerdem ob beitrags_id wirklich so heißt.
Oi, sorry. Da bin ich mit was durcheinander gekommen. ^__^Zitat von Niji-chan
In der Database habe ich jetzt nochmal den Namen überprüft. Dabei habe ich festgestellt, dass immer alle Comments mit der beitrags_id "0" angezeigt werden. alle, die ne andere Zahl in dieser Spalte stehen haben, werden ignoriert.
och menno...
EDIT:
habe jetzt
funktioniert jetzt alles...
thx 4 help![]()
![]()
--
Geändert von Niji-chan (13.10.2005 um 19:27 Uhr)