include und Abfrage Problem

magnificent

Mitglied
Guten Abend
habe folgende Seite
hier

Wenn ich nun bei Tutorials auf Design klicke soll eine Abfrage gestartet werden (alle Design Tuts), wie händle ich die Parameteübergabe für die Abfrage?
Das Ergebnis der Abfrage soll im unteren Conten Bereich zB Photoshop, Bryce,... ausgeben
aber als Link, der wiederum eine erneute Abfrage ermöglichen soll, das heiß das in diesem Link wieder Parameter übergeben werden sollen (jedoch besteht dieser aus dem Ergebnis der Vorangegangenen Abfrage (mainkat_id) wie kann ich das machen.
>> ist nur der erste Teil des Problems <<

Das ist wirklich sehr sehr wichtig, habe den ganzen Tag irgendwelche Tutorial durchsucht, aber keins konnte wirklich mein Problem (die Rekursion) lösen

Thx magnificent

(ich hoffe man versteht was ich meine, ist sehr schwer die Problematik zu formulieren)

//edit
Mit Abfrage meine ich eine Datenbankabfrage, sorry hatte ich nicht gemerkt:(
 
Zuletzt bearbeitet:
Hallo!

Erst einmal: Der Link funktioniert nicht (wohl wegen Te...Versuch)!
Vielleicht mal richtig (per Button) einfügen!

Hab' ich das jetzt nicht richtig verstanden, oder weisst du nicht, wie man Variablen per Link übergibt?!
Das sollte man schon wissen!
Also, die Parameter kannst du so übergeben:

Code:
<a href="link.php?variable1=wert1&variable2=wert2">link</a>

Die Variablen kannst du dann mit $_GET['variable1'] auslesen (ab PHP 4.2).
Wenn das doch nicht das Problem war, solltest du dieses wohl mal etwas genauer Schildern (z. B. was verstehst du unter Abfrage - wenn das relevant sein sollte).

Zur Rekursion von Funktionen mal folgenden Text:

Rekursion
PHP erlaubt rekursive Funktionsaufrufe. Dabei ruft eine Funktion sich
selbst auf. Das wird beispielsweise benötigt, um verschachtelte Strukturen
auszugeben. Dabei kann es sich um Verzeichnisse oder Menüführungen
handeln. Wenn Sie viel mit Arrays experimentieren, mag Ihnen das folgende
Beispiel gefallen. Es stellt Arrays in Arrays dar und der Funktion ist
es egal, wie viele Verschachtelungsebenen Sie verwenden.

function array_show($arr) {
static $shift = 1;
foreach($arr as $key => $val) {
if (is_array($key)) {
$shift++;
array_show($key);
} else {
echo str_repeat("--&nbsp;", $shift);
echo "<b>$key</b>";
echo "<br>";
}
if (is_array($val)) {
$shift++;
array_show($val);
} else {
echo str_repeat("==&nbsp;", $shift) . $val;
echo "<br>";
}
}
$shift > 1 ? $shift-- : $shift = 1;
}
$arrCheck = array("key1" => "val1",
"key2" => "val2",
array(1,2,3),
"keyX" => array(33 => 66,
66 => 99),
4,
array("M" => "m",
"N" => "n",
array("Z1", array("Z2" => "Z3"), "Z4"),
)
);
echo "<pre>";

array_show($arrCheck);
echo "</pre>";

Die Funktion ist zusätzlich mit der Anzeige der Verschachtelungstiefe
durch Einrückung versehen. Das Array $arrCheck dient nur der Demonstration.
Damit die Einrückung bei jedem Aufruf der Funktion erhalten
bleibt, wird die Variable $shift, in der die Tiefe gespeichert wird, statisch
gesetzt (static). Die Funktion ist im Kern auf drei Zeilen beschränkt:

if (is_array($key)) {
$shift++;
array_show($key);

Zuerst wird geprüft, ob der von foreach gelieferte Wert noch ein Array ist
– das ist dann ein verschachteltes Array. Ist das der Fall, wird die Tiefe
erhöht und die Funktion ruft sich mit dem Teilarray selbst auf. Wurden
keine Arrays mehr gefunden, gelangt die Funktion zum Ende, verringert
dort die Tiefe und kehrt zum aufrufenden Punkt zurück:

$shift--;

Die nebenstehende Abbildung zeigt, wie das Ergebnis mit den Musterdaten
aussieht. Schlüssel sind fett, Werte normal und mit =-Zeichen dargestellt.
Beachten Sie, dass assoziative Arrays fehlende Schlüssel durch numerische
Indizes auffüllen (beispielsweise die 1 vor der alleinstehenden
4).

Erweiterte Syntax
Auch wenn sich der Sinn nicht sofort erschließt, sei an dieser Stelle eine
andere Form des Funktionsaufrufes dargestellt. Es ist möglich, Funktionen
über eine Referenz aufzurufen, das heißt, der Inhalt einer Variablen bestimmt
den Funktionsnamen. Das folgende Beispiel soll dies verdeutlichen:

<?
function allgemeine_function() {
echo "Eigentlich sinnlos... ";
return TRUE;
}
$fu_name = "_function";
$ok = ${"allgemeine".$fu_name}();

Die Syntax des Aufrufes ist einfach, kann aber in manchem Kontext gut
zur Klammerwüste ausarten. Deshalb nochmal in vereinfachter Form:

${"Funktionsname"}(Parameter);

oder

$funktionsname = "Funktionsname";
${funktionsname}(Parameter);

Dies entspricht:

Funktionsname(Parameter);
 
Zuletzt bearbeitet:
Morgen
Ich denke ich erkläre nochmal einfach die Wirkung anstatt nen Lösungsansatz von mir zu bringen (der war wohl vollkommen falsch).
Ich habe in meiner DB 3 Tabellen ein für MainKategorien, ein für SubKategorien (enthält mainkat_id, kat_count, kat_id,kat_erklaerung...) un d eine dritte Tabelle Tutorials (tut_id, tut_name, verfasser, kat_id, adresse (wo sich der Inhalt des Tutorials befindet),..)

Wenn ich nun bei Tutorials auf Design klicke, sollen alle MainKategorien angezeigt werden, wenn ich dort eine auswähle sollen die zugehörigen Subkategorien und ihre Anzahl und ein erklärender Text angezeigt werden. Das soll im 2. content Bereich passieren.
Wenn ich eine Subkategorie anklicke sollen alle zu gehörigen Tutorials im 1.content-Bereich (der große) angezeigt werden (Name des Tuts, Datum, Verfasser, einleitender Text) und beim draufklicken soll dann das Tutorial im 1.content- Bereich angezeigt werden (Adresse dafür steht in der DB).

:( Langer Text aber ich hoffe jetzt versteht man was ich meine.
Thx magnificent :)
 
beim klick auf Design mußt du doch nur per while-Schleife deine Design-Kats aufrufen und diese wiederum verlinken. In der Abfrage für die Sub-Kat holst du dann die kat_id und kat_erklaerung per where mainkat_id und schon hast du die Link-ID der entsprechenden Kategorien u.s.w.
 
Wie die Abfrage ansich funktioniert weiß ich ja nur wie übergebe ich die Link-ID, ein Abfrage Script soll das alles lösen.
Da ich absolut keinen Plan hab (voller Anfänger in PHP) wäre ne gute Erläuterung wirklich hilfreich:(
 
das machst du dann nur im Link, also:

<a href="diesigns.php?hauptk=$hauptkat&amp;sid=$session[hash]">$kat_erklaerung</a>

wenn der Link in der Schleife ist, werden alle Haptkategorien ausgegeben.
Auf der nächsten Seite holst du dir dann die ID`s aus dem Link, also in diesem Fall $hauptk und machst dort die Abfrage in deiner Datei mit where $hauptk und schon hast du alle Ausgaben nur für die eine Kategorie.
 
Menno.
Wie sollte jetzt der Link (wenns nicht allzu schlimm ist vielleicht schon erklärt mit zugehörigem Abfrage script) aussehen wenn ich auf Design klicke (damit dann alle MainKat's ausgegeben werden) und wie sieht die Stelle aus wo ichs include?

Und wie händle ich das später außer dem Link (wo dann noch die nächste Abfrage gestartet wird) noch dahinter die Anzahl (der Tutorials für die zugehörige Subkategorie) und darunter die Erklärung der Subkategorie ausgegeben wird?

Ich hoffe ich nerve nicht zu viel, weil die Fragen ja schon sehr spezifisch sind, aber ich weiß einfach nicht weiter (und habe wirklich keine Lust die Seite nur mit HMLT zu machen, weil dann werd ich ja adlig, wenn ich ein neues Tut habe)

Danke schon mal allen die sich meines Problems annehmen:)
 
Original geschrieben von magnificent
Menno.
Wie sollte jetzt der Link (wenns nicht allzu schlimm ist vielleicht schon erklärt mit zugehörigem Abfrage script) aussehen wenn ich auf Design klicke (damit dann alle MainKat's ausgegeben werden) und wie sieht die Stelle aus wo ichs include?
Bitte versteh mich jetzt nich falsch, aber hier wird Dir keiner ein fertiges Schript schreiben. Da Du selbst gesagt hast, Du seiest ein PHP-Anfänger, dann solltest Du dir erstmal die Grundlagen erarbeiten. Im PHP-Bereich gibt es sehr viele gute Bücher, auch für Einsteiger gedacht. Wenn man sich erstmal ne Weile eingearbeitet hat, dann lösen sich die meisten Probleme von selbst. Und wenn Du dann immer noch Fragen/Probleme hast, wirst Du auch Hilfe bekommen, aber wie gesagt, ein fertiges Script wohl kaum.
 
Zurück