Logo - MyWebsolution.de
User gesamt  :  2498888
User online  :  4
KubaSeoTräume, PHP Forum, PHP Community and more ... MyWebsolution.de!
   
   
 
Registrieren Login User F.A.Q Suche Home

eingeloggt bleiben

MyWebsolution.de Foren » Anfängerfragen PHP und MYSQL » Up- und Download von Dateien..

Seite: <  1 2 3  > Posts pro Seite: 5 10 20
Autor Thread
11.02.2007 16:07 Uhr
Flitze
Administrator
registriert 17.10.2006
wohnt in Eschwege
Beiträge 332
Zitat:
Also hier mal der von mir der abgeänderte code. Muss ich dann noch jeden Buchstaben einzeln reinschreiben (dass mit den "..." hat nicht funkioniert)? Ich habs jetzt einfach mal bis g gemacht.


Ja, musst du, hatte nur gestern nich so viel zeit ;)
Hier, zum copy and paste:

PHP:
<?php
    $alphabet 
= array("A""B""C""D""E""F""G""H""I""J""K""L""M""N""O""P""Q""R""S""T""U""V""W""X""Y""Z");
?>



Profil ansehen Mail senden
11.02.2007 17:21 Uhr
mdean
Forenposter
 
registriert 03.01.2007
wohnt in Schweiz
Beiträge 90
Funtkioniert immer noch nicht. Es wird einfach "| | | | | | | | | | | | | | | | | | | | | | | | | | " ausgegeben.

Hier noch mal der Code für die Navigation:
PHP:
<?php
    $_GET
['Interpret'] = isset($_GET['Interpret'])?$_GET['Interpret']:'A';
    
// Navi-Links erzeugen
    
$alphabet = array("A""B""C""D""E""F""G""H""I""J""K""L""M""N""O""P""Q""R""S""T""U""V""W""X""Y""Z");
    foreach(
$alphabet as $letter)
        echo 
"<a href=\"".$_SERVER['PHP_SELF']."?Interpret=".$letter."\"></a> | \n";
    if(isset(
$_GET['Interpret'])){
        
// auf ein Zeichen kürzen
        
$_GET['Interpret'] = substr($_GET['Interpret'],0,1);
        
$sql "SELECT
                        NewName,
                        Interpret,
                        Songname
                FROM
                        notes
                WHERE
                        Interpret LIKE '"
.mysql_real_escape_string($_GET['Interpret'])."%'
               "
;
         
$result mysql_query($sql);
         
// Ausgabe
    
}
    else
        echo 
"Wählen Sie bitte den Anfangsbuchstaben des gewünschten Interpreten aus.\n";
?>


Und so gebe ich die Interpreten auf der Seite aus:
PHP:
<?
do {
echo 
$row_Noten['Interpret'];

while (
$row_Noten mysql_fetch_assoc($Noten));
?>
Profil ansehen
11.02.2007 21:23 Uhr
Flitze
Administrator
registriert 17.10.2006
wohnt in Eschwege
Beiträge 332
ja omg sry ^^

man muss den links natürlich auch nen anzeigetext geben ;)

PHP:
<?php
    $alphabet 
= array("A""B""C""D""E""F""G""H""I""J""K""L""M""N""O""P""Q""R""S""T""U""V""W""X""Y""Z");
    foreach(
$alphabet as $letter)
        echo 
"<a href=\"".$_SERVER['PHP_SELF']."?Interpret=".$letter."\">".$letter."</a> | \n";
?>


so muss es heißen


Profil ansehen Mail senden
12.02.2007 10:29 Uhr
mdean
Forenposter
 
registriert 03.01.2007
wohnt in Schweiz
Beiträge 90
Danke! Die Buchstaben werden jetzt angezeigt. Aber nun noch ein Problem:
Nach dem query sollte doch dann meine Ausgabe kommen.
PHP:
$result = mysql_query($sql);
         // Ausgabe <---- Hier

Ich gebe die Interpreten aber, aus layoutgründen an einer anderen Stelle auf meiner Seite aus, mit folgendem Code:
PHP:
<?
do {
echo 
$row_Noten['Interpret'];

while (
$row_Noten mysql_fetch_assoc($Noten));
?>


Wie kann ich jetzt sagen dass die ausgabe für den obigen code erst weiter unten erfolgt?
Hoffe verstehst was ich meine:P
Profil ansehen
12.02.2007 17:26 Uhr
Flitze
Administrator
registriert 17.10.2006
wohnt in Eschwege
Beiträge 332
Das "Resultat" des Queries wird doch in der Variable $result gespeichert, deshalb kannst du an jeder beliebigen Stelle danach das Ergebnis ausgeben.

Warum benutzt du eine do-while Schleife, es kann doch auch sein, dass kein Datensatz gefunden wird..


Profil ansehen Mail senden
12.02.2007 17:31 Uhr
mdean
Forenposter
 
registriert 03.01.2007
wohnt in Schweiz
Beiträge 90
Wie kann ich es ausser der do while schleife noch machen?
Wenn ich einfach eingebe echo $result kommt folgendes: Resource id #9

Dieser Beitrag wurde am 12.02.2007 um 17:49:14 Uhr von mdean zum 1. Mal editiert.
Profil ansehen
12.02.2007 18:45 Uhr
Flitze
Administrator
registriert 17.10.2006
wohnt in Eschwege
Beiträge 332
Mit einer normalen while-schleife

Das Problem bei der Do-While ist, dass sie auf jeden fall einmal durchläuft, bevor die Bedingung geprüft wird, deshalb würde ich die normale while bevorzugen.

PHP:
while($row = mysql_fetch_assoc($result)){
    echo $row['Interpret']"<br>\n";
}


Ein MySQL-Query gibt als Resultat so etwas wie eine "Resultat-Tabellen-ID" zurück, deshalb funzt das mit dem echo nicht so einfach ;)

mit mysql_fetch_assoc(); holst du dann einen Datensatz aus dieser "Ergebnis-Tabelle" heraus und wenn man das ganze in eine while-Schleife packt, dann liest er eben so lange alle Datensätze aus, bis er beim letzen angekommen ist.


Profil ansehen Mail senden
12.02.2007 19:08 Uhr
mdean
Forenposter
 
registriert 03.01.2007
wohnt in Schweiz
Beiträge 90
Es kommt eine Fehlermeldung:
Parse error: parse error, unexpected T_CONSTANT_ENCAPSED_STRING, expecting ',' or ';' in C:\blabla\index.php on line 277
Profil ansehen
12.02.2007 20:24 Uhr
Flitze
Administrator
registriert 17.10.2006
wohnt in Eschwege
Beiträge 332
PHP:
<?php
while($row mysql_fetch_assoc($result)){
    echo 
$row['Interpret']."<br>\n";
}
?>



Profil ansehen Mail senden
12.02.2007 21:33 Uhr
mdean
Forenposter
 
registriert 03.01.2007
wohnt in Schweiz
Beiträge 90
:mygod: danke jetzt klappts. Jetzt hab ich aber wieder ein anderes Problem:(. Wenn es jetzt zum Beispiel mehrere Interpreten mit dem Buchstaben A gibt, weiss ich nur wie man es nach der ID sortiert. Wie kann ich es so machen dass es die Interpreten nach abc sortiert?
Danke für deine Geduld:)
Profil ansehen
12.02.2007 23:28 Uhr
Flitze
Administrator
registriert 17.10.2006
wohnt in Eschwege
Beiträge 332
ORDER BY Interpret ASC
^-- aufsteigend

ORDER BY Interpret DESC
^-- absteigend


Profil ansehen Mail senden
13.02.2007 11:50 Uhr
mdean
Forenposter
 
registriert 03.01.2007
wohnt in Schweiz
Beiträge 90
Es wird jetzt ja eine Liste mit den Interpreten angezeigt. Jetzt wenn man auf einen klickt, sollte die Liste verschwinden und nur noch die Lieder desjenigen Interpreten angezeigt werden (z.B. Interpret - (Album)), und die sollten einen Link auf die Datei die zu demjenigen Lied ergeben. Wie mache ich das?
Ich habs mal so gemacht das die Interpreten als Link erscheinen:
PHP:
<?
while($row mysql_fetch_assoc($result)){
    echo 
"<a href=\"".$_SERVER['PHP_SELF']."?Int=".$row['Interpret']."\">".$row['Interpret']."</a><br>\n";
}
?>
Profil ansehen
13.02.2007 17:58 Uhr
Flitze
Administrator
registriert 17.10.2006
wohnt in Eschwege
Beiträge 332
ich würde eine neue Datei anlegen, also nicht

PHP:
<?
while($row mysql_fetch_assoc($result)){
    echo 
"<a href=\"".$_SERVER['PHP_SELF']."?Int=".$row['Interpret']."\">".$row['Interpret']."</a><br>\n";
}
?>


sondern

PHP:
<?
while($row mysql_fetch_assoc($result)){
    echo 
"<a href=\"neue_Datei.php?Int=".$row['Interpret']."\">".$row['Interpret']."</a><br>\n";
}
?>


In dieser neuen Datei ließt du dann alle Lieder aus, die zu dem Interpreten gehören, den du ja als $_GET['Int'] in deinem Beispiel übergibst.

Dieser Beitrag wurde am 13.02.2007 um 17:58:21 Uhr von Flitze zum 1. Mal editiert.


Profil ansehen Mail senden
13.02.2007 18:25 Uhr
mdean
Forenposter
 
registriert 03.01.2007
wohnt in Schweiz
Beiträge 90
Wie lese ich dann auf der detail.php (hab sie so benannt) die Lieder aus? Habs mal so versucht, klappt aber nicht....
PHP:
<?
if(isset($_GET['Int'])){
                
        
$sql "SELECT
                        NewName,
                        Interpret,
                        Songname
                FROM
                        notes
                        "
;
                        
$result2 mysql_query($sql);
                        }
                        while(
$row2 mysql_fetch_assoc($result2)){
 echo 
"<a href=\"../usercenter/noten/$row2['NewName']".""\">".$row2['Songname']." - ".($row2['Album']"</a><br>\n";
}                        
?>
Profil ansehen
13.02.2007 20:37 Uhr
Flitze
Administrator
registriert 17.10.2006
wohnt in Eschwege
Beiträge 332
sieht schwer nach syntaxfehlern aus.. Fehlermeldungen?
versuchs ma so:
PHP:
<?
if(isset($_GET['Int'])){               
        
$sql "SELECT
                        NewName,
                        Interpret,
                        Songname
                FROM
                        notes
               "
;
         
$result2 mysql_query($sql);
         while(
$row2 mysql_fetch_assoc($result2)){
         echo 
"<a href=\"../usercenter/noten/".$row2['NewName']."\">".$row2['Songname']." - ".($row2['Album']"</a><br>\n";
}                        
?>



Profil ansehen Mail senden
13.02.2007 20:44 Uhr
mdean
Forenposter
 
registriert 03.01.2007
wohnt in Schweiz
Beiträge 90
Es kommt ne Fehlermeldung: Parse error: parse error, unexpected T_CONSTANT_ENCAPSED_STRING
Profil ansehen
13.02.2007 21:40 Uhr
Flitze
Administrator
registriert 17.10.2006
wohnt in Eschwege
Beiträge 332
PHP:

<?
if(isset($_GET['Int'])){               
        
$sql "SELECT
                        NewName,
                        Interpret,
                        Songname
                FROM
                        notes
               "
;
         
$result2 mysql_query($sql);
         while(
$row2 mysql_fetch_assoc($result2)){
         echo 
"<a href=\"../usercenter/noten/".$row2['NewName']."\">".$row2['Songname']." - ".$row2['Album']."</a><br>\n";
}                        
?>



Profil ansehen Mail senden
13.02.2007 21:46 Uhr
mdean
Forenposter
 
registriert 03.01.2007
wohnt in Schweiz
Beiträge 90
Es kommt wieder ein Fehler, jedoch diesmal ein anderer: Parse error: parse error, unexpected $end

EDIT: Hab ne Klammer vergessen.... aber geht trotzdem nicht. Es kommt folgende Meldung: Notice: Undefined index: Album in C:blabal\detail.php on line 301
Wheres the Hood at? -

Notice: Undefined index: Album in C:blabla\detail.php on line 301
Skaterboy -

Notice: Undefined index: Album in C:bla\detail.php on line 301
Highway to Hell -

Dieser Beitrag wurde am 13.02.2007 um 21:49:14 Uhr von mdean zum 1. Mal editiert.
Profil ansehen
13.02.2007 22:08 Uhr
mdean
Forenposter
 
registriert 03.01.2007
wohnt in Schweiz
Beiträge 90
Omg man merkt das es schon spät ist :) Hab den Fehler gefunden... und gleichzeitig ein anderen entdeckt. Es werden nicht nur diejenigen Songs des ausgewählten Interpreten angezeigt, sondern alle. Wie kann ich das ändern?
Profil ansehen
13.02.2007 23:03 Uhr
Flitze
Administrator
registriert 17.10.2006
wohnt in Eschwege
Beiträge 332
naja irgendwo muss natürlich noch ein

WHERE
Interpret = '".mysql_real_escape_string($_GET['Int'])."'

rein ;)


Profil ansehen Mail senden
Seite: <  1 2 3  > no reply
Powered by Pascal Landau © 2006 MyWebsolution.de
Designed by Pascal Landau © 2006 MyWebsolution.de
 
 
 
 
Home Email Impressum Disclaimer Statistik