mediengestalter.info
FAQ :: Mitgliederliste :: MGi Team

Willkommen auf dem Portal für Mediengestalter

Aktuelles Datum und Uhrzeit: Do 25.04.2024 04:11 Benutzername: Passwort: Auto-Login

Thema: [PHP]SwitchCase denkt immer es sei case 0, ist es aber nicht vom 12.11.2008


Neues Thema eröffnen   Neue Antwort erstellen MGi Foren-Übersicht -> Programmierung -> [PHP]SwitchCase denkt immer es sei case 0, ist es aber nicht
Seite: 1, 2  Weiter
Autor Nachricht
frq
Threadersteller

Dabei seit: 03.11.2005
Ort: Bananenstadt
Alter: -
Geschlecht: Männlich
Verfasst Mi 12.11.2008 15:26
Titel

[PHP]SwitchCase denkt immer es sei case 0, ist es aber nicht

Antworten mit Zitat Zum Seitenanfang

Hallo liebe Mediengestalter,
Ich habe ein Problem in PHP. Ich arbeite zurzeit an einem Onlineprojekt und übergebe mit Flash an PHP eine Variabele. Diese kommt auch ohne Probleme an. Als Test speichere Ich sie in eine textdatei. Der Wert der Variabele ist korrekt. Danach habe Ich eine Case abfrage. Leider nimmt er bei der Case abfrage immer Fall 0.

Habt ihr da eine Idee? Bei gettype kommt ein Integer raus.

Hier der Code:
Code:

   //Datenbank Connection
   include('functions.inc.php');
   dbconnect();

   // Von Flash kommend (GET)
   $_POST["auswahl"];
   //$erhalten = gettype((int)$_POST["auswahl"]);
   

   $order = "datum";
    


   $myFile = "speichern.txt";
   $fh = fopen($myFile, 'w') or die("can't open file");
   $stringData = "Zwischenspeichern\n";
   fwrite($fh, $stringData);
   $stringData = "Variabele:\n".$erhalten;
   fwrite($fh, $stringData);
   fclose($fh);
   
   

   switch ((int)$_POST["auswahl"])
   {
   case 0:   $daten = "id,kategorie,datum"; $auswahl = "kategorie>=0";break;
   case 1: $daten = "id,kategorie,datum"; $auswahl = "kategorie=4";  break; //gibt Kategorie 4
   case 2: $daten = "id,kategorie,datum"; $auswahl = "kategorie=3"; break; //gibt Kategorie 3
   }
   
   
   $query = "SELECT ".$daten." FROM Datenbank WHERE ".$auswahl." ORDER BY ".$order." DESC";
   $res_query = mysql_query($query) or die("query geht nicht:" . mysql_error());
   $num_query = mysql_num_rows($res_query);


Komme echt nicht mehr weiter. Wäre für jede Hilfe dankbar!

Gruß
frq


Zuletzt bearbeitet von frq am Fr 14.11.2008 18:52, insgesamt 2-mal bearbeitet
  View user's profile Private Nachricht senden
pixelpapst303

Dabei seit: 06.07.2006
Ort: hamburg
Alter: 50
Geschlecht: Männlich
Verfasst Mi 12.11.2008 17:10
Titel

Antworten mit Zitat Zum Seitenanfang

auch wenn du die variable versuchst zum int zu machen, teste mal, obs nicht einfach n string geblieben ist

Code:


case "1" ...



* Keine Ahnung... *
  View user's profile Private Nachricht senden Website dieses Benutzers besuchen
Anzeige
Anzeige
Zeithase

Dabei seit: 09.05.2005
Ort: Erfurt
Alter: 39
Geschlecht: Männlich
Verfasst Mi 12.11.2008 17:12
Titel

Antworten mit Zitat Zum Seitenanfang

Lass Dir doch einfach mal $erhalten zum Testen ausgeben. Dann wirst Du sicher sehen, woran es liegt.
  View user's profile Private Nachricht senden
leinich

Dabei seit: 23.09.2008
Ort: -
Alter: -
Geschlecht: -
Verfasst Mi 12.11.2008 17:14
Titel

Antworten mit Zitat Zum Seitenanfang

ich wurd mal auch einen default Wert mit einbauen...

ala
Code:

switch ($_GET['auswahl']){
   case 1:
                 $daten = "id,kategorie,datum";
                 $auswahl = "kategorie=4"; 
                 break;   
   case 2:
                 $daten = "id,kategorie,datum";
                 $auswahl = "kategorie=3";
                 break;
   default:
                 $daten = "id,kategorie,datum";
                 $auswahl = "kategorie>=0";
                 break;       
}


Sicher, dass du nicht POST mit GET verwechselt hast

Zitat:
// Von Flash kommend (GET)
$erhalten = (int)$_POST["auswahl"];
  View user's profile Private Nachricht senden
frq
Threadersteller

Dabei seit: 03.11.2005
Ort: Bananenstadt
Alter: -
Geschlecht: Männlich
Verfasst Mi 12.11.2008 17:38
Titel

Antworten mit Zitat Zum Seitenanfang

hey, werde Ich gleich mal testen.

$erhalten lasse Ich mir ja durch die Txt datei ausgeben. Dort steht dann auch der richtige Wert. Den würde Ich nicht erhalten wenn Ich Get und Post verwechselt hätte oder?

Schwierig..
ist aber bestimmt wie immer nur so ein kleiner mist fehler -.-

Danke euch schonmal soweit

*edit*
habe jetzt mal alle Vorschläge getestet. Wenn Ich default nehme anstatt case 0, nimmt er default. Wenn Ich kein case0 und kein default, und alle anderen cases nutze, dann wird nichts ausgegeben. Wenn sie als String benutzt werden funktioniert es leider auch nicht.

Bin also weiterhin auf eure Hilfe angewiesen!

Gruß
frq


Zuletzt bearbeitet von frq am Mi 12.11.2008 17:52, insgesamt 1-mal bearbeitet
  View user's profile Private Nachricht senden
Pixelpole

Dabei seit: 25.10.2004
Ort: Trier
Alter: 37
Geschlecht: Männlich
Verfasst Mi 12.11.2008 17:40
Titel

Antworten mit Zitat Zum Seitenanfang

wie genau sieht denn dein AS zum wegschicken aus?
  View user's profile Private Nachricht senden
Zeithase

Dabei seit: 09.05.2005
Ort: Erfurt
Alter: 39
Geschlecht: Männlich
Verfasst Mi 12.11.2008 17:44
Titel

Antworten mit Zitat Zum Seitenanfang

Mit "Ausgeben" meinte ich nicht, die Variable in ein Textfile zu packen, sondern sie wirklich auszugeben. Das beinhaltet auch eine Typendefinition, etc.
  View user's profile Private Nachricht senden
frq
Threadersteller

Dabei seit: 03.11.2005
Ort: Bananenstadt
Alter: -
Geschlecht: Männlich
Verfasst Mi 12.11.2008 18:00
Titel

Antworten mit Zitat Zum Seitenanfang

Hier der Actionscriptteil
Code:
var anfordern:URLVariables = new URLVariables();
   var _anfrage:int = 2;
   anfordern.auswahl = _anfrage;

   
   var request:URLRequest = new URLRequest();
   request.data = anfordern;
   request.url = "http://tenada.te.funpic.de/Danielsmist/AS4.php";
   request.method = URLRequestMethod.POST;
   var sender:URLLoader = new URLLoader();
   //sendToURL(request);
   //sender.addEventListener(Event.COMPLETE, senden);
   sender.load(request);
   //sender.addEventListener(Event.COMPLETE, completeSender);


@Zeithase: Naja, meinst du mit ausgeben via echo get_type etc. ausgeben? Eigentlich schickt mein Script dann die Antwort wieder zu Flash zurück. Das Funktioniert soweit, wenn die Daten richtig angekommen sind und die Datenbank ausgelesen wird.
Sorry wenn ich irgendwas falsch verstehe, habe mich länger nicht mit PHP beschäfftigt.
  View user's profile Private Nachricht senden
 
Ähnliche Themen Denkt ihr, dass viele mit Cracks arbeiten?
Switch Case?
Welches DVD Case ist das?
CD Covers in Case darstellen
Flash Menü + PHP Strucktur (Case)
[mysql] ORDER BY mit CASE oder IF?
Neues Thema eröffnen   Neue Antwort erstellen Seite: 1, 2  Weiter
MGi Foren-Übersicht -> Programmierung


Du kannst keine Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum nicht antworten.
Du kannst an Umfragen in diesem Forum nicht mitmachen.