mediengestalter.info
FAQ :: Mitgliederliste :: MGi Team

Willkommen auf dem Portal für Mediengestalter

Aktuelles Datum und Uhrzeit: Fr 29.03.2024 07:55 Benutzername: Passwort: Auto-Login

Thema: PHP - Variablen in SQL Abfragen vom 05.03.2009


Neues Thema eröffnen   Neue Antwort erstellen MGi Foren-Übersicht -> Programmierung -> PHP - Variablen in SQL Abfragen
Seite: 1, 2  Weiter
Autor Nachricht
pneumenn
Threadersteller

Dabei seit: 03.03.2009
Ort: -
Alter: -
Geschlecht: -
Verfasst Do 05.03.2009 11:11
Titel

PHP - Variablen in SQL Abfragen

Antworten mit Zitat Zum Seitenanfang

Hallo !
Als PHP Anfänger schlage ich mich seit einigen Tagen mit folgenden Problem herum

<?php
.....

$sql = 'SELECT
var1, varb, varc
FROM
tab1
WHERE var1 < "'.$problem.'")';


......

$problem = 'abcde';

while ($row = $sql->fetch_assoc())

....


?>

Mein Problem, die Variable ist in der SQL Abfrage NULL. Nutze ich $_POST(..) Variablen aus Formularen funktioniert es, nutzt mir aber nichts, da die Varible $Problem berechnet wird.
Schreibe ich $problem in eine Tabelle und nutze diese Tabelle in der SQL Abfrage funktioniert es bedingt. Bei großen Datenmengen dauert die Berechnung zu lange.
Kann mir da jemand einen Tipp zum finden der Lösung geben?
  View user's profile Private Nachricht senden
DerM

Dabei seit: 18.01.2009
Ort: -
Alter: 42
Geschlecht: Männlich
Verfasst Do 05.03.2009 11:17
Titel

Antworten mit Zitat Zum Seitenanfang

$problem = $_POST['problem'];

Gruß
  View user's profile Private Nachricht senden
Anzeige
Anzeige
pneumenn
Threadersteller

Dabei seit: 03.03.2009
Ort: -
Alter: -
Geschlecht: -
Verfasst Do 05.03.2009 11:42
Titel

Antworten mit Zitat Zum Seitenanfang

Das ist leider keine Lösung für das Problem.
  View user's profile Private Nachricht senden
remote

Dabei seit: 10.11.2006
Ort: /var/www/
Alter: 109
Geschlecht: Männlich
Verfasst Do 05.03.2009 12:12
Titel

Antworten mit Zitat Zum Seitenanfang

Lass Dir mal deine query komplett ausgeben (echo $sql). Dann wirst Du den Fehler vermutlich schnell sehen *zwinker*


P.S:

Eines solltest Du dir gar nicht angewöhnen:

$sql = "select...";

in $sql speicherst du das query, sql datensätze sind da keine drin. Üblicher ist:

$query = "SELECT bla";
$sql = mysql_query($query);
  View user's profile Private Nachricht senden
bacon

Dabei seit: 24.10.2007
Ort: -
Alter: -
Geschlecht: -
Verfasst Do 05.03.2009 12:23
Titel

Antworten mit Zitat Zum Seitenanfang

Meine Güte! Doku-Vorleseservice: http://www.usegroup.de/software/phptutorial/arbeiten_mit_strings.html

Zitat:
Strings werden in PHP mit "." aneinandergereiht. Soll der i-te Besucher etwa kein Abstand nach seiner Nummer sehen ist man zu einem Trick gezwungen: da echo "Sie sind der $ite Besucher" nach einer -nicht vorhandenen - Variable namens ite suchen würde verwendet man entweder

echo "Sie sind der ";
echo $i;
echo "te Besucher";

oder das kürzere

echo "Sie sind der ".$i."te Besucher";

Wird an das Ende des Strings "Sie sind der " der String (die Variable $i wird hier als String aufgefasst) $i (Wert z.B. 5) angehängt, an die direkt der String "te Besucher". angehängt wird.


Zuletzt bearbeitet von bacon am Do 05.03.2009 12:23, insgesamt 1-mal bearbeitet
  View user's profile Private Nachricht senden
pneumenn
Threadersteller

Dabei seit: 03.03.2009
Ort: -
Alter: -
Geschlecht: -
Verfasst Do 05.03.2009 13:06
Titel

Antworten mit Zitat Zum Seitenanfang

die Variable $problem hat in der SQL Abfrage den Wert NULL. Was muss ich ändern damit ich den richtigen Wert für meine Variable behalte?
  View user's profile Private Nachricht senden
bacon

Dabei seit: 24.10.2007
Ort: -
Alter: -
Geschlecht: -
Verfasst Do 05.03.2009 13:19
Titel

Antworten mit Zitat Zum Seitenanfang

Meine Güte. Ließ' bitte die Doku, bevor du hier Threads mit 10000 Anfängerproblemen aufmachst, die dir eh keiner erläutern kann, wenn du nicht ein bisschen Hintergrundwissen mitbringst

1.) String-Values werden in mysql ausschließlich per Single-Quote (') maskiert:
WHERE attribut = 'string'

2.) PHP kennt einen Unterschied zwischen Single- und Doublequotes! Lerne PHP-Strings und String-Konkatenation

3.) Wenn deine Variable den Wert NULL hat, kann das diverse Ursachen haben. Wahrscheinlich aber liegt es einfach daran, dass du falsche Quotes benutzt. Lerne, deine Scripte zu debuggen. http://www.usegroup.de/software/phptutorial/debugging.html

4.) Validiere deine Eingaben, sonst stellt dein Script ein riesiges Sicherheitsproblem dar.

5.) Nutze NICHT < oder > auf Strings, diese Operatoren sind ausschließlich für Zahlenoperationen gedacht, alles andere frisst Performance.

6.) Formatiere und Kommentiere deinen Quelltext!
  View user's profile Private Nachricht senden
pneumenn
Threadersteller

Dabei seit: 03.03.2009
Ort: -
Alter: -
Geschlecht: -
Verfasst Do 05.03.2009 13:34
Titel

Antworten mit Zitat Zum Seitenanfang

1.) String-Values werden in mysql ausschließlich per Single-Quote (') maskiert:
WHERE attribut = 'string' ist leider nicht der Fehler
Ich gehe davon aus das meine Variabel$problem falsch deklariert ist. Für diese Deklaration suche ich einen Hinweis.
  View user's profile Private Nachricht senden
 
Ähnliche Themen FTP Status mit PHP abfragen
checkox abfragen ...
[PHP] Wie URL in If-Schleife abfragen?
Index.php abfragen
SQL Abfragen mit Java
fertig abgespieltes FLV abfragen
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.