Demo

Probiere ClanSphere aus und teste daran herum. Demo


Antworten: 36
Seite < 1 [2]
loadVars
Thread-Ersteller


Wannabe poster




Beiträge: 24
# Antwort: 21 - 14.12.2011 um 14:04 Uhr
Moin,
hätte da wieder ne Frage (Suchfunktion hat nix passendes gefunden):

Und zwar möchte ich eine neue Funktion in den mod einbauen.
Dazu habe ich vorhandene Dateien (php&tpl) kopiert und umbenannt.

In der manage.tpl rufe ich diese neue Datei wie die anderen auch auf:

<!-- Dieser Aufruf geht nicht: -->
<td class="leftc"><a href="{com:url_trackupload}" title="{lang:trackupload}">{icon:folder_public} </a></td>

<!-- Dieser Aufruf geht: -->
<td class="leftc"><a href="{com:url_picture}" title="{lang:picture}">{icon:folder_images}< /a></td>

FEHLER:

Not Found
The requested URL /domainname/{com:url_trackupload} was not found on this server.

Und in der Browserzeile:
..../domainname//%7Bcom:url_trackupload%7D

Wenn ich folgendes eingebe komme ich auf die Datei:
..../domainname/admin.php?mod=mp3Player&action=trackupload

In der access.php ist die neue Datei trackupload natürlich auch eingetragen.

Müssen neue Dateien noch irgendwo anders eingetragen werden?

Danke Euch...


Inaktiv
|
Micha.09 ClanSphere Team


Specialist



Herkunft: Dortmund
Beiträge: 2860
# Antwort: 22 - 14.12.2011 um 14:38 Uhr
Eigentlich macht das typecast in PHP eh keinen Sinn, weil PHP keine strikten Typen hat. PHP ändert den Typ einer Variable unter umständen während der ausführung sogar mehrfach, je nachdem was du damit machst, egal ob du vorher nen Cast gemacht hast.


Inaktiv
|
Fr33z3m4n ClanSphere Team


Medal of Honor




Herkunft: Hamm
Beiträge: 11094
# Antwort: 23 - 14.12.2011 um 14:50 Uhr
14.12.2011 um 14:38 Uhr - Mc.Alcatraz:
Eigentlich macht das typecast in PHP eh keinen Sinn, weil PHP keine strikten Typen hat. PHP ändert den Typ einer Variable unter umständen während der ausführung sogar mehrfach, je nachdem was du damit machst, egal ob du vorher nen Cast gemacht hast.

Mag sein, aber du kannst nach eniem Cast, davon ausgehen, dass erstmal keine anderen Zeichen als die gewünschten vorhanden sind.

Was in der späteren Laufzeit passiert, kannst du dann nicht mehr beeinflussen.
Aber das hilft loadVars nunmal so gut wie garnicht für sein Problem.

@loadVars
Wenn du einen Platzhalter angibst, musst du diesen auch vorher in der PHP definieren.
{com:url_trackupload} -> $data['com']['url_trackupload'] = cs_link ... oder cs_mod usw.

Das musst du natürlich auch für deinen Link erstellen
{com:url_picture} -> $data['com']['url_püicture'] = cs_link ....

Oder machst es im Template anders

<td class="leftc"><a href="{url:mp3Player_trackupload}" title="{lang:picture}">{icon:folder_images}< /a></td>


------------------
mfg
Patrick "Fr33z3m4n" Jaskulski

Antoine de Saint-Exupéry: Wenn Du ein Schiff bauen willst, so trommle nicht Männer zusammen, um Holz zu beschaffen, Aufgaben zu verteilen, sondern lehre die Männer die Sehnsucht nach dem endlosen weiten Meer.

Inaktiv
|
loadVars
Thread-Ersteller


Wannabe poster




Beiträge: 24
# Antwort: 24 - 14.12.2011 um 15:31 Uhr
Hi,
was ich jetzt nicht verstehe ist das ich die view.php als Muster kopiert habe und in der letzten Zeile ist ja die Übergabe an das Template.
echo cs_subtemplate(__FILE__,$data,'mp3Player','view'); (Das view habe ich gegen trackupload getauscht)
Ich sehe jetzt nirgendwo im Script eine weitere Platzhalterdefinition und dachte durch diese Zeile wird $data an das Template übergeben.

Wenn ich die view so aufrufe klappt das nämlich:
<td class="leftc"><a href="{com:url_view}" title="{lang:picture}">{icon:folder_images}< /a></td>

Irgendwie stelle ich da gerade zimlich blöde an glaube ich

Hier mal die view bzw. trackupload.php (wie gesagt ist das gerade nur ein Muster um den Zugriff hinzubekommen)
mehr... +-

 
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
1. / 2. / ... 

<?php
// ClanSphere 2010 - www.clansphere.net
// $Id$

$cs_lang cs_translate('mp3Player');
$cs_get cs_get('id');
$data = array();

$cs_mp3Player_id = empty($cs_get['id']) ? $cs_get['id'];

$cs_mp3Player cs_sql_select(__FILE__,'mp3Player','*',"song_id = '" $cs_mp3Player_id "'");


$who "users_id = '" $cs_mp3Player['users_id'] . "'";
$cs_users cs_sql_select(__FILE__,'users','users_nick, users_active, users_delete',$who);
$data['com']['user'] = cs_user($cs_mp3Player['users_id'],$cs_users['users_nick'], $cs_users['users_active'], $cs_users['users_delete']);

$data['com']['name'] = cs_secure($cs_mp3Player['track_name'],1);
$data['com']['file'] = cs_secure($cs_mp3Player['track_file'],1);

if(empty(
$cs_mp3Player['track_pictures'])) {
  
$data['pictures'][0]['thumb'] = $cs_lang['nopic'];
}
else {
  
$run 0;
  
$mp3Players_pics explode("\n",$cs_mp3Player['track_pictures']);
  foreach(
$mp3Players_pics AS $pic) {
    
$link cs_html_img('uploads/mp3Player/thumb-' $pic);
  
$path $cs_main['php_self']['dirname'];
    
$data['pictures'][$run]['thumb'] = cs_html_link($path 'uploads/mp3Player/picture-' $pic,$link) . ' ';
    
$run++;
  }
}

echo 
cs_subtemplate(__FILE__,$data,'mp3Player','trackupload');




Die letzte Möglichkeit hatte ich auch schon in Betracht gezogen. Allerdings wird bei dieser Variante nicht die ID mit übergeben.
<td class="leftc"><a href="{url:mp3Player_trackupload}" title="{lang:picture}">{icon:folder_images}< /a></td>



Ich hoffe Ihr versteht was ich meine ...

Grüße


Zuletzt editiert von loadVars am 14.12.2011 um 15:32 Uhr (1x Editiert)
Inaktiv
|
Fr33z3m4n ClanSphere Team


Medal of Honor




Herkunft: Hamm
Beiträge: 11094
# Antwort: 25 - 14.12.2011 um 17:39 Uhr
<td class="leftc"><a href="{url:mp3Player_trackupload}" title="{lang:picture}">{icon:folder_images}< /a></td>

Mit ID wäre dann
<td class="leftc"><a href="{url:mp3Player_trackupload:id={xxx:iddestracks}}" title="{lang:picture}">{icon:folder_images}< /a></td>


Und nein, ich versteh dich gerade nicht.
Weil du zeigst meiner Meinung nach, hier das HTML von der List, wo alle Tracks aufgelistet werden, aber einerseits die PHP vom jeweilgem Track.
So sieht es für mich aus.


------------------
mfg
Patrick "Fr33z3m4n" Jaskulski

Antoine de Saint-Exupéry: Wenn Du ein Schiff bauen willst, so trommle nicht Männer zusammen, um Holz zu beschaffen, Aufgaben zu verteilen, sondern lehre die Männer die Sehnsucht nach dem endlosen weiten Meer.

Inaktiv
|
loadVars
Thread-Ersteller


Wannabe poster




Beiträge: 24
# Antwort: 26 - 14.12.2011 um 17:58 Uhr
Stehe gerade in der Ecke und schäme mich

Meinen letzen Post kann ich nur auf die Grippesymptome schieben.


Wenn du einen Platzhalter angibst, musst du diesen auch vorher in der PHP definieren.
{com:url_trackupload} -> $data['com']['url_trackupload'] = cs_link ... oder cs_mod usw.

Natürlich muss ich das ja in der manage.php machen.

Danke Dir für die Hilfe


Zuletzt editiert von loadVars am 14.12.2011 um 17:58 Uhr (1x Editiert)
Inaktiv
|
loadVars
Thread-Ersteller


Wannabe poster




Beiträge: 24
# Antwort: 27 - 17.12.2011 um 12:13 Uhr
Moin,

so da hab ich auch schon die nächste kleine Frage an Euch :

Ich rufe aus der trackupload.tpl die trackupload.php auf.

Wenn ich es über die Methode mache wird das Script erkannt und es gibt auch an die Datei hochgeladen zu haben. Aber die Datei ist nicht auf dem Server.
<form method="post" id="mp3Player_trackupload" action="{url:mp3Player_trackupload}" enctype="multipart/form-data">


Wenn ich den Pfad aber komplett angebe bei action klappt alles wunderbar und die Datei befindet sich auf dem Server.
<form method="post" id="mp3Player_trackupload" action = 'http://www.domainname/domainname/mods/mp3Player/trackupload.php' enctype="multipart/form-data">


Hier noch die Fehlermeldungen:
PHP Warning on line 41 -> move_uploaded_file(../../uploads/mp3Player/tracks/test_track01.mp3): failed to open stream: No such file or directory

PHP Warning on line 41 -> move_uploaded_file(): Unable to move '/home/domainname/tmp/phpd9NNCm' to '../../uploads/mp3Player/tracks/test_track01.mp3'

Muss dazusagen das die php noch nicht mit cs_ Funktionen ist, sondern ein reines php Script mit echo´s und so zum testen.
Bestimmt liegt da der Fehler oder???

Und hier mal die trackupload.php (Wie gesagt muss die noch an Eure cs Funktionen und Syntax angepasst werden da arbeite ich mich langsam darauf zu.)
mehr... +-

 
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
1. / 2. / ... 

<?php

$whitelist 
= array('mp3''wav''m4a'); 
$max_size 14000000;
$upload_pfad "../../uploads/mp3Player/tracks/";

    if(isset(
$_FILES['trackupload'])) 
        {     
         
$filetype substr($_FILES['trackupload']['name'], strlen($_FILES['trackupload']['name'])-3); 
            
            if(
in_array($filetype$whitelist)) 
                { 
                    if(
$_FILES['trackupload']['size'] <=$max_size)
                        { 
                            
move_uploaded_file($_FILES['trackupload']['tmp_name'], $upload_pfad.$_FILES['trackupload']['name']); 
                        
                            
$data['echo']['output01'] = "<a href = '$upload_pfad".$_FILES['trackupload']['name']."'>";
                            
$data['echo']['output02'] .= $_FILES['trackupload']['name'];
                            
$data['echo']['output03'] .= ' wurde erfolgreich hochgeladen</a>';

                           
// Hier noch den Eintrag des Pfades in die DB erstellen.....
                                        
                            
$output "<a href = '$upload_pfad".$_FILES['trackupload']['name']."'>"
                            
$output .= $_FILES['trackupload']['name']; 
                            
$output .= ' wurde erfolgreich hochgeladen</a>'
                            echo 
$output
                        } 
                        else 
                            { 
                                echo 
'Die Datei hat eine falsche Größe!'
                            } 
                } 
                else 
                    { 
                        echo 
'Nur Mp3, Wav und M4a Dateien sind erlaubt!'
                    } 
        } 
        else 
            { 
                echo 
'Datei Upload fehlgeschlagen';
            } 

//----------------------------------------------------------------------------------------------------------------
$data['echo']['test01'] = "Testeintrag"// Test zur Übergabe an cs_template
echo cs_subtemplate(__FILE__,$data,'mp3Player','trackupload');

?>



Achso die chmod´s vom gesamten uploads ordner (auch Unterverzeichnisse) haben 777.

Könnte da einen kleinen Tipp gebrauchen

Grüße


Zuletzt editiert von loadVars am 18.12.2011 um 14:15 Uhr (4x Editiert)
Inaktiv
|
loadVars
Thread-Ersteller


Wannabe poster




Beiträge: 24
# Antwort: 28 - 19.12.2011 um 12:07 Uhr

Hat keiner einen Tipp was da falsch ist ?

Grüße


Inaktiv
|
Fr33z3m4n ClanSphere Team


Medal of Honor




Herkunft: Hamm
Beiträge: 11094
# Antwort: 29 - 19.12.2011 um 13:49 Uhr
Der Fehler wird sicherlich NICHT am Form Attribute liegen.

Am besten, lässt du die in der php Datei alle Var nach und nach ausgeben, um den fehler zu finden.


------------------
mfg
Patrick "Fr33z3m4n" Jaskulski

Antoine de Saint-Exupéry: Wenn Du ein Schiff bauen willst, so trommle nicht Männer zusammen, um Holz zu beschaffen, Aufgaben zu verteilen, sondern lehre die Männer die Sehnsucht nach dem endlosen weiten Meer.

Inaktiv
|
loadVars
Thread-Ersteller


Wannabe poster




Beiträge: 24
# Antwort: 30 - 19.12.2011 um 15:31 Uhr
Hi,

also habe mir nun nochmal die Var´s ausgeben lassen. Ich bekomme immer den korrekten Temp Pfad und auch der Dateiname ist in Ordnung. Verstehe halt nicht warum es mit der ersten Variante funktioniert und mit der anderen wird die Dtei zwar richtig erkannt und ausgegeben aber nicht in den upload Ordner verschoben.

Nur bei der {url:mp3Player_trackupload} Variante bekomme ich die Fehlermeldungen
PHP Warning on line 32 -> move_uploaded_file(../../uploads/mp3Player/tracks/test_track01.mp3): failed to open stream: No such file or directory

PHP Warning on line 32 -> move_uploaded_file(): Unable to move '/home/domainname/tmp/phpk6Qv9F' to '../../uploads/mp3Player/tracks/test_track01.mp3'


Grüße


Inaktiv
|
Fr33z3m4n ClanSphere Team


Medal of Honor




Herkunft: Hamm
Beiträge: 11094
# Antwort: 31 - 19.12.2011 um 15:40 Uhr
wie sieht denn der endgültige Form-Tag aus ?
Also wenn die Page fertig aufgebaut ist, im Quelltext einfach kopieren und hier einfügen.

Aber ich glaub ich habs schon.
Du gibst in deiner PHP Datei den relativen Pfad an.
"../../uploads/"... das ist falsche.
Bitte nutzt zum Uploaden von Dateien, die cs_upload funktion.

Das heißt, bau erstmal unsere Funktionen alle ein, dann klappt das auch.
Das Script geht immer vom Home-Verzeichnis aus, und nicht relativ.


------------------
mfg
Patrick "Fr33z3m4n" Jaskulski

Antoine de Saint-Exupéry: Wenn Du ein Schiff bauen willst, so trommle nicht Männer zusammen, um Holz zu beschaffen, Aufgaben zu verteilen, sondern lehre die Männer die Sehnsucht nach dem endlosen weiten Meer.

Zuletzt editiert von Fr33z3m4n ClanSphere Team am 19.12.2011 um 15:43 Uhr (1x Editiert)
Inaktiv
|
loadVars
Thread-Ersteller


Wannabe poster




Beiträge: 24
# Antwort: 32 - 19.12.2011 um 15:59 Uhr
Danke Dir

Ok werde das machen die cs_upload funktion ist ja in der Wiki gut beschrieben.

Bis demnächst


Inaktiv
|
loadVars
Thread-Ersteller


Wannabe poster




Beiträge: 24
# Antwort: 33 - 21.12.2011 um 15:55 Uhr
Da bin ich schon wieder....

Gibt es spezielle XML Funktionen in Clansphere. Oder sollte ich einfach auf simpleXML zurückgreifen?

Möchte Daten aus der DB in eine XML File speichern.

Grüße


Inaktiv
|
Fr33z3m4n ClanSphere Team


Medal of Honor




Herkunft: Hamm
Beiträge: 11094
# Antwort: 34 - 21.12.2011 um 16:09 Uhr
nein gibt es nicht. Kannst dafür simpleXML nutzen.
Frage ist nur, wieso XML ?


------------------
mfg
Patrick "Fr33z3m4n" Jaskulski

Antoine de Saint-Exupéry: Wenn Du ein Schiff bauen willst, so trommle nicht Männer zusammen, um Holz zu beschaffen, Aufgaben zu verteilen, sondern lehre die Männer die Sehnsucht nach dem endlosen weiten Meer.

Inaktiv
|
loadVars
Thread-Ersteller


Wannabe poster




Beiträge: 24
# Antwort: 35 - 21.12.2011 um 20:25 Uhr
Hi Fr33z3m4n,

ok dann per simpleXML.

Brauche ne xml file für meinen flash mp3Player, die ganze Sache im Backend (zum üben sehr gut) ist nur für die Administration des Players. Will den Player zwar bald auch auf die direkte DB Verbindung umstellen aber bis dahin ist es halt universeller dies per XML_Playlist zu machen.

Grüße


Inaktiv
|
Fr33z3m4n ClanSphere Team


Medal of Honor




Herkunft: Hamm
Beiträge: 11094
# Antwort: 36 - 22.12.2011 um 11:19 Uhr
Ok.

kannst auch JSON nutzen ? Weil es kleiner und flexibler ist ?!


------------------
mfg
Patrick "Fr33z3m4n" Jaskulski

Antoine de Saint-Exupéry: Wenn Du ein Schiff bauen willst, so trommle nicht Männer zusammen, um Holz zu beschaffen, Aufgaben zu verteilen, sondern lehre die Männer die Sehnsucht nach dem endlosen weiten Meer.

Inaktiv
|
Antworten: 36
Seite < 1 [2]


Sie müssen sich registrieren, um zu antworten.