![]() |
mit PHP Zugriff auf MySQL prüfen
Bevor ich noch verzweifle, ich will mit diesem PHP Script schauen ob ich zugriff zu meiner MySQL Datenbank habe, aber es funkt. nicht.
Ist der Syntax in Ordnung? <?php $linkID = mysql_connect("localhost", "USERNAME", "PASSWORT"); if (!$linkID) die("Keine Verbindung zur Datenbank."); ?> Danke! |
Probier mal das:
$db = @MYSQL_CONNECT($db_server,$db_user,$db_passwort) or die ("Konnte keine Verbindung zur Datenbank herstellen"); $db_check = @MYSQL_SELECT_DB($db_name); if($db) echo "Verbindung zur Datenbank wurde hergestellt"; Hoffe geholfen zu haben, lG, schera |
PHP-Code:
|
@Schera
Super, mit Deinem Script habe ich es jetzt endlich geschafft zur Datenbank durchzudringen, danke!!! @AlexanderFX Danke für das Script - ist (noch) ein bissl komplex für mich. Aber jetzt da ich weiss wie ich zur Datenbank komme kann ich mich ja mal damit rumspielen. |
Also das geht ja besser als befürchtet - ich kann schon mittels Formular in meine MySQLTabelle schreiben :)
Hätte da noch eine Frage - ich möchte eine Befragung (mittels Radiobuttons) machen, die über mehrere Seiten geht (immer eine Frage pro Seite). Das gesammelte Ergebnis der Fragen soll dann pro User in meine Tabelle geschrieben werden. Nach dem System: user1 - ergebnis frage 1 - ergebnis frage 2 - ergebnis frage 3 - ... user2 - ergebnis frage 1 - ergebnis frage 2 - ergebnis frage 3 - ... ... Wie mache ich den das am Besten dass der User über mehrere Seiten seine ID behält. Gibt's bei PHP sowas wie eine global Variable? Any ideas? |
Hmm, das müsste dann mit Sessions gehen
mehr unter http://at.php.net/manual/de/ref.session.php ;) So gibst du ihm dann zb eintragen.php?sid=seinesession an, und die ID speicherst du im Script in die Session hinein also $SESSION[db_id]=$id Ist eine recht sichere Methode,weil wenn du die ID direkt im Link übermitteln würdest könnte er mit eintragen.php?id=37 andere Einträge überschreiben :cool: |
um etwas pingelig zu sein
die variable heißt $_SESSION bps: index.php Code:
Code:
<?php |
Hey, danke für die Antworten, werde das mal ausprobieren!
|
also ich verwende diesen script (in eigener datei, hier: "connDB.php"), und binde ihn bei jedem benötigten DB-Connect mit
PHP-Code:
PHP-Code:
|
@Who-T
Also ich habe jetzt dieses $_session ausprobiert. Auf der Seite index.php kennt er noch den usernamen, wenn ich den usernamen dann aber per next.php aufrufe, ist der username leer- da dürfte er das nicht als globale Variable übergeben oder? |
Zitat:
Code:
PHP-Script OutputBuffer (optional) => ob_flush(); |
hast du genau den code von mir?
der müsst funken wenn nein post mal deinen code wichtig: hast du session_start()? und kein session_destroy() vor deinem zugriff? hast du php version > 4.1.0? |
Zitat:
Zitat:
|
Also Leute, nachdem es noch immer nicht funktioniert poste ich mal meinen Code, vielleicht übersehe ich ja was. Es kann aber sein das Lycos bestimmte PHP Funktionen sperrt, da es ein Freewebspace Account ist, oder?
INDEX.PHP: <HTML> <HEAD> </HEAD> <?php session_start (); $_SESSION["username"] = "row"; // now user name is available on all session sites echo $_SESSION["username"]; ?> <BODY> view username </body> </HTML> NEXT.PHP: <HTML> <HEAD> <TITLE> New Document </TITLE> </HEAD> <BODY> <?php session_start (); echo $_SESSION["username"]; echo " ist der aktuelle Username"; session_destroy (); //now username is not available any more ?> </BODY> </HTML> |
der code dürfte eigentlich gar net ausführbar sein.
session_start() muss aufgerufen werden, bevor ein output zum client stattfindet. ergo Code:
|
Probier einmal, die Session zu starten, bevor Du irgendwelchen HTML-Code an den Browser schickst.
|
Ups, da war jemand schneller :D
|
@Who-T
Es funktioniert!!! :bier: Jetztlade ich Dich aber auf ein virtuelles Bier ein, danke! :bier: |
nur ein virtuelles? :( ;)
|
Es läuft jetzt alles brav unter der selben Session-ID.
Und wie funktioniert das dann wenn ich sagen wir mal auf Seite 1 Name, Adresse und Telefonnummer eingeben lasse und auf Seite 2 verschiedene andere Angaben mir geben lasse? Ich schätze mal ich muss das dann einfach unter der selben UserID in die Felder der MySQL Datenbank eintragen lassen. Lieg ich da richtig? @Who-T Ich werd mich mal erkundigen wieviel ein Bierdose per Post so kostet. Nur derzeit wird die wahrscheinlich kochen wenn sie ankommt... |
Zitat:
|
Zitat:
|
Zitat:
Zitat:
außerdem sind die mit der quarantäne ganz schön happig da, weiß net ob die ein ausländisches bier durch den zoll lassen :D auch wenns besser schmeckt als die biere hier |
Hi Leute,
bräuchte nochmals PHP Unterstützung. Ich habe jetzt ein Eingabeformular mit mehreren Fragen und dazugehörigen Checkoxen. Mit einem PHP Script kann ich dann ja überprüfen ob eh alles angekreuzelt wurde. Aber wenn was fehlt und ich die Leute zurückschicke zum Formular fehlen natürlich wieder alles Eingaben die eh gepasst haben. Ich denke dass das die Besucher nerven wird... Habt ihr jemand eine Idee wie man das verbessern kann, so dass die Sachen einfach wieder automatisch bis auf die fehlenden Angaben eingetragen werden? |
werte merken und beim zurückleiten ausgeben
bsp <input type="text" value="<?php echo $username ?>" name="username"> |
Zitat:
Zitat:
Code:
echo '<INPUT type="text" value="'; |
bzw, weil ich den code grad sehe.
spätestens jetzt würd ich mir gedanken über die verwendung von templates machen ;) je früher du damit umgehen lernst, desto gut. |
Auch auf die Gefahr schallendes Gelächter zu erzeugen:
Was sind den Templates? |
rein interessehalber, tendiert die wcm-gemeinde in sachen template-verwaltung zu grossen dingen wie smarty (smarty.php.net) oder wird eher im kleinen rahmen agiert? ich hab bislang meine eigene kleine "template-engine" in verwendung...
ps: templates sind vorlagen, mit deren hilfe man versucht, die technische realisierung von der grafischen zu trennen (oder fuer php zumindest die php-skripts vom html-ramsch zu trennen)... |
@WHO-T
Nur damit klar ist ob ich's kapiert habe: <input type="text" value="<?php echo $username ?>" name="username"> = Schreibt $username hin wenn es ihn schon gibt, sonst warten auf username Dass mit dem Merken der Variable ist mir hoffentlich klar, aber wie kann ich zurückleiten, ohne dass dabei die Variable verloren geht? |
entweder du hast die sachen in der session gespeichert oder du gibst sie per GET zurück.
ich würd ein objekt mit den daten anlegen und in der session speichern das is übersichtlicher. bzw das ganze eben mit templates lösen, da kannst du dir u.U. das umleiten auf eine andere php seite überhaupt ersparen. |
da kommen wieder die sessions ins spiel.
1.teil (formular) Code:
session_start();Code:
session_start();Code:
// auf der verarbeitenden seite |
Danke Leute für die Anregungen, ist ja ziemlich komplex das Zeug.
Werde das jetzt mal in Ruhe studieren ob ich's behirne ;) |
session again
Mein Fragebogen funktioniert jetzt recht brav.
Jeder User bekommt eine Session-ID (einen UNIX timestamp) und hupft von Page zu Page bis zum Schluss. Das funktioniert brav vom meinem Rechner in der Arbeit (LAN & IE5.5) Interessanterweise funktioniert das mit den Sessions von daheim per Modem und IE6 nicht so ganz - d.h er legt immer zweimal die selbe Session an - nachdem ich manchmal die Daten auch aus der Session anzeigen lasse stehen dann die Sachen oft doppelt da, z.B. Frage 1 von 1414 (besonders ärgerlich :mad: ) Ich befürchte dass hat mit dem Proxie oder Browser-Cache zu tun - vielleicht habt ihr ja eine Idee??? |
| Alle Zeitangaben in WEZ +2. Es ist jetzt 21:46 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
© 2009 FSL Verlag