[PHP/mySQL] MySQL/PHP unter Linux

ZuluDC

assimiliert
MySQL/PHP unter Linux

Ich bin im Moment gerade mit Linux hier (Knoppix HD-Installation).

Ich hab Xampp (Lampp) installiert. Sieht gut aus. Sollt soweit alles laufen. SQL_Dump importieren funktioniert auch 1A. Wenn ich nun aber auf eine Webseite zugreifen will kommt die Meldung 'No Database selected' *grummel*. Das Linux case-sentensiv ist ist mir bewusst. Kann es echt daran liegen, dass kein Passwort für die Datenbank vergeben ist?

Beim direkten Zugriff auf das htdocs-Verzeichnis über konqueror motzt der auch :
"Der Befehl kann nicht ausgeführt werden. Die Datei oder das Verzeichnis file x:/xampp existiert nicht". Also ...öehmm...irgendwo echt noch an einer config-Datei fummeln? Mehr Benutzerrechte verschenken? *GGG*. Greife ich aber noch eine Verzeichnisschicht tiefer ist der Zugriff gegeben. Bin aber als root eingeloogt.

*Sich am Kopf kratzen tut und ein bissel dumm aus der Wäsche guckt*
 
Öhm, hast du eben gesagt du benutzt Linux?

Warum sucht er dann was auf file x:/xampp ????

Sicher das du die Linuxconfig hast ;)?

Gruß Jürgen
 
Öhm, hast du eben gesagt du benutzt Linux?
Ich benutze Windows :cry: und Linux :confused ; mit ganz klarem Schwerpunkt auf Windöschen. Windows von Linux zu unterscheiden fällt mir recht leicht :)

Warum sucht er dann was auf file x:/xampp ????
Ich weiss nicht ob es eine Sie oder ein Er ist :ROFLMAO: , aber ich weiss das gesucht wird und diese Meldung kommt. Ich kann leider diese Frage nicht beantworten, da ich sie ja (wenn auch nicht mit gleichem Wortlaut) gestellt habe.

Sicher das du die Linuxconfig hast ;)?
Öehm...ist das so zu verstehen wie deine erste Frage¿
*ZuluDC fleissig den konqueror, fstab, Verzeichnis opt, etc, home, kwrite (hiess das nicht mal wordpad -lach- ) usw in Windows suchen tut...aber ich kann es einfach nicht finden da :eek:*

Eines aber weiss ich mit Sicherheit...ich brings nicht zum laufen *schnieff*

Nichts für ungut... :)
 
Ok. Ich habs begriffen. Ihr schafft es einfach nicht *lach* (ich aber auch nicht :/)

Jetzt aber hab ich eine Frage auf den Lippen, die manche von Euch vermutlich beantworten können. Also...

Ich hab eine Webseite erstellt in der die meisten Farbwerte (z.B #ff00ff, #cccccc, #00ccff etc.) für Zellen einer Tabelle in einer Datenbank gespeichert sind (PHP/MySQL). Der erste Datensatz wäre ein graues Design für die Webseite, der Zweite ein rotes Design, der Dritte ein grünes Design and so on.

Nun: Das SQL-Statement ist wirklich sehr einfach: Schlicht und ergreifend nur ein 'SELECT * FROM farben'.
Um die diversen Designs anzeigen zu können könnt man mehrere exakt gleiche Seiten erstellen, diese verlinken und nur die SQL-Statements minim ändern.

'SELECT * FROM farben WHERE id=1' : graues Design
'SELECT * FROM farben WHERE id=2' : rotes Design
'SELECT * FROM farben WHERE id=3' : grünes Design etc.

Aber besser wäre es natürlich nur eine einzelne Seite zu haben mit Buttons oder einer Auswahlliste wo man die Designs aufrufen kann.

Ich habs versucht mit Buttons (Formular, <input type="text" name ="irgendwas"> der submit war auch vorhanden...), dann als action auf die gleiche Seite verweisen mit einer Übergabe der id (irgendwas wie OnClick="location.href='genau die gleiche Seite.php?id=2'"). Gibt aber irgendeinen Befehl in PHP der das Verweisen auf sich selber auch kann (irgendwas wie <?php echo $PHP_SELF; >). Ist möglich, dass ich den erwähnte PHP-Befehl jetzt gerade falsch geschrieben hab. Habs nicht gerade richtig präsent.

Wichtig ist viel eher wo mein Denkfehler liegt. Ich hab jedenfalls 2h gefrickelt und es einfach nicht zum laufen gebracht.
Sollt doch prinzipiell gehen mir nur einer einzigen Seite und der Übergabe der id, nicht wahr? What make i wrong? Irgendwie hab ich das Gefühl ist steh vor der Lösung, aber sehen tu ich sie nicht :/
 
Bevor ich ins Bett gehe mal kurz das grundlegendste
Zunächst mal die Abfrage.

'SELECT * FROM farben WHERE id=$color'

Nun könntest Du per Button oder link, deine Anweisung (bzw die User) Dynamisch ändern.

<a href="<? echo $PHP_SELF ?>?color=1 ">graues Design</a>
<a href="<? echo $PHP_SELF ?>?color=2 ">rotes Design</a>
<a href="<? echo $PHP_SELF ?>?color=3 ">grünes Design</a>

So kannst Du natürlich auch per Drop-Down Menü verfahren.
 
Erstmal vielen Dank Astrominus!

Deine Methode scheint prinzipiell zu funktionieren *freu*, wobei ich das SQL-Statement nach den verweisenden Links mit den Übergabeparametern im Quellencode zu plazieren hatte, da sonst nur ein SQL-Fehler ohne die eigentliche Seite angezeigt wurde. Hängt sicher damit zusammen, dass dem SQL-Statement einfach nicht klar war, was den überhaupt mal an die Stelle der Variablen $color treten könnte (noch nicht definiert oder so...).

Anyway...beim erstmaligen Aufruf besteht immer noch diese Fehlermeldung ('You have an error in your SQL syntax. Check the manual that corresponds to your MySQL server version for the right syntax to use near '' at line 1') weil nun einfach noch kein Parameter an der Stelle von $color steht. Ich muss aber nur einen Link anklicken und schon läufts astrein.

Astroplusmässig würd ich sagen *ggg*

Besteht also nur noch die Problematik wie ich der Webseite beibringe, dass sie beim allerersten Aufruf einen definierten Wert an die Stelle von $color setzt. Ein Definieren einer Variable wie <?php $color=1 ?> führt zu einem Fixsetzen von $color und das Link-klicken ändert nichts daran...erscheint mir auch ziemlich logisch.

Aber Astrominus weiss sicherlich wie ich das in den Griff kriege :)


Jedenfalls nochmal vielen Dank...wirklich cool!


<edit>
Hupps...hab nochmal was gesehen. Die Hintergrundfarbe (auch in der Datenbank gespeichert) wird nicht angenommen...vermutlich weil der SQL-Befehl weiter unten im Quellencode ist...
*Einfach mal weiterschrauben tue *
*Irgendwie schwirrt noch ein $isset oder if in meinem Kopf herum*
</edit>
 
Zuletzt bearbeitet:
Stimmt, das hatte ich nicht bedacht, das beim ersten aufruf die Variable $color noch gar nicht existiert, und somit einen error produziert.

Setze vor die DB-Abfrage einfach folgende if-Anweisung:

if(!$color)$color=1;

Wenn die Variable $color nicht existiert, wird sie dann mit dem Wert 1 angelegt.
 
Astrominus for president :)

Gäääähn...augenreib...Kaffeeschlürf, zum Pc schlurft, Monitor & PC anschalt, ins Inet einlogg, Supi's Board aufruf, nochmals augenreib, Astrominus Post durchles, Dreamweaver start, Änderung reinfrickel, geänderte Webseite aufruf......
......
......
......S T A U N !!!!!!!!!!!!!!!!!!


&


Juuuuuuuuuuuuuuupppppppppppppppppppppiiiiiiiiiiiiiiiiii!!!!

*12fach Salchoff & verschärfte Denise Bielmann Pirouette mach*
*5facher Rückwärts-Salto dranhäng & mit Knoten in den Beinen am Boden liegenbleib*

Voll Hammer! Das wars :)

In PHP/MySQL bin ich ja ziemlich blutiger Anfänger *zugeb*, aber man merkt einfach schnell, dass man mit Datenbank grausamste Sachen machen kann, wenn man sich einfach mal diverse Boards oder CMS installiert.

*Nochmals dem Astrominus kräftig die Hand schüttelt* :bier

Wirklich verschärft!!! Das freut mich jetzt echt :funny . Mit dieser Methode lassen sich vermutlich noch diverseste Sachen realisieren.
 
Man freut sich ja gerne über ein Lob (wer nicht ? ;) )

Aber wenn es so originel dargebracht wird, macht es doppelt so viel Spass :)

Schön das es funktioniert :)
 
Oben