mediengestalter.info
FAQ :: Mitgliederliste :: MGi Team

Willkommen auf dem Portal für Mediengestalter

Aktuelles Datum und Uhrzeit: Do 18.04.2024 05:08 Benutzername: Passwort: Auto-Login

Thema: [PHP] mysql_fetch_array() Fehler vom 16.06.2006


Neues Thema eröffnen   Neue Antwort erstellen MGi Foren-Übersicht -> Programmierung -> [PHP] mysql_fetch_array() Fehler
Seite: Zurück  1, 2, 3  Weiter
Autor Nachricht
Lexis
Threadersteller

Dabei seit: 05.07.2005
Ort: München
Alter: -
Geschlecht: Weiblich
Verfasst Fr 16.06.2006 23:21
Titel

Antworten mit Zitat Zum Seitenanfang

mhm... und was soll ich da machen? Sorry... versteh das leider net...
  View user's profile Private Nachricht senden
stsy2k

Dabei seit: 30.01.2003
Ort: -
Alter: -
Geschlecht: Männlich
Verfasst Fr 16.06.2006 23:26
Titel

Antworten mit Zitat Zum Seitenanfang

$news_id anders abfragen bzw. vorher definieren. Z.B. mit $_REQUEST["news_id"]
  View user's profile Private Nachricht senden
Anzeige
Anzeige
Lexis
Threadersteller

Dabei seit: 05.07.2005
Ort: München
Alter: -
Geschlecht: Weiblich
Verfasst Fr 16.06.2006 23:41
Titel

Antworten mit Zitat Zum Seitenanfang

aber wie soll ich die vorher definieren... die wird doch erst durch die url übergeben?!
  View user's profile Private Nachricht senden
stsy2k

Dabei seit: 30.01.2003
Ort: -
Alter: -
Geschlecht: Männlich
Verfasst Fr 16.06.2006 23:44
Titel

Antworten mit Zitat Zum Seitenanfang

Code:
<?php
$news_id = $_REQUEST["news_id"];
$news_SQL="SELECT * FROM news WHERE news_id=" . $news_id;
        $news_result=mysql_query($news_SQL);
        echo mysql_error();
        $news=mysql_fetch_array($news_result);?>
 <table width="450" border="0" cellspacing="0" cellpadding="0" align="center">
  <tr>
    <td>
      <? $unixtime = strtotime($news['news_datetime']);
      ?><h2><? echo date("j.n.y H:i",$unixtime) ?><br><?
      echo $news['news_header'] ?></h2>   
    </td>
   </tr>
   <tr>
    <td>
      <p><? echo nl2br($news['news_main']) ?></p>
    </td>
   </tr>


Die übergebene Variable muss unbedingt noch überprüft werden, damit kein Code eingeschleust werden kann.
  View user's profile Private Nachricht senden
Lexis
Threadersteller

Dabei seit: 05.07.2005
Ort: München
Alter: -
Geschlecht: Weiblich
Verfasst Fr 16.06.2006 23:51
Titel

Antworten mit Zitat Zum Seitenanfang

Ich glaube es nicht.. es funktioniert. * Applaus, Applaus *

Aber wir muss ich die Variable $_REQUEST verstehen?? Was macht sie? Und wie kann ich das überprüfen, dass kein Code eingeschleußt wird?


Und vorallem.. wieo hat das die ganze Zeit funktioniert und auf einmal nicht mehr? Hat es schon jemand versucht?
  View user's profile Private Nachricht senden
stsy2k

Dabei seit: 30.01.2003
Ort: -
Alter: -
Geschlecht: Männlich
Verfasst Sa 17.06.2006 09:22
Titel

Antworten mit Zitat Zum Seitenanfang

http://php3.de/manual/de/language.variables.predefined.php
  View user's profile Private Nachricht senden
grafzahl

Dabei seit: 13.04.2006
Ort: Magdeburg
Alter: 39
Geschlecht: Männlich
Verfasst Sa 17.06.2006 10:42
Titel

Antworten mit Zitat Zum Seitenanfang

Mit dieser "Vorabvariablen" kannst du definieren auf welcher Quelle der Parser die Variable beziehen soll. Für deine Zwecke zum Beispiel solltest du eher $_GET(Bezeihung einer Variable aus der URL, also GET) verwenden, $_REQUEST ist schon wieder allgemein und daher aus meiner sicht nicht sonderlich sicher.

Andere Möglichkeiten sind noch $_POST für Formularelemente, $_SESSION für Sessionelemente und zb $_SERVER für Servervariablen.

Gibt denke ich noch mehr *zwinker* $_REQUEST fragt so weit ich weis alle möglichen Quellen ab, sollte daher eher selten verwendet werden.

Wenn du Zukunftssicher programmieren willst solltest du also immer beim Aufruf einer Variable angeben woher diese gezogen werden soll, an und für gehts auch mit der standardmethode, also einfach die variable angeben, doch schalten immer mehr Provider in der php.ini die REGISTER_GLOBALS auf Off, und dann greift diese schlampige Schreibweise nicht mehr.


Zuletzt bearbeitet von grafzahl am Sa 17.06.2006 10:45, insgesamt 2-mal bearbeitet
  View user's profile Private Nachricht senden Website dieses Benutzers besuchen
tacker

Dabei seit: 22.03.2002
Ort: Trondheim, Norwegen
Alter: 43
Geschlecht: Männlich
Verfasst Sa 17.06.2006 11:23
Titel

Antworten mit Zitat Zum Seitenanfang

Au weia. Dein Script ist so offen für SQL Injections.
register globals solltest du niemals verwenden.

Statt dessen
Code:
$news_id = (int)$_GET['news_id'];
  View user's profile Private Nachricht senden Website dieses Benutzers besuchen
 
Ähnliche Themen Fieses PHP/MySQL-Skript gibt nur "Array Array Array..." aus
[PHP + mySQL] Kann Fehler in einer mySQL-Phrase nicht finden
[mysql/php] array speichern
[php/mysql] daten aus DB rausholen, und in zufalls-array
[PHP & Mysql] Fehler in der Datenbankverbindung
seltsamer mySQL Fehler
Neues Thema eröffnen   Neue Antwort erstellen Seite: Zurück  1, 2, 3  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.