mech: mysteriös

re

ich hab da mal wieder was komisches
hatte ne prozedurr, die auch funktionierte
insgesamt 6 stück ........ gut die sind eigentlich gleich, hätt ich auch inne schleife packen können, aber egal
jedenfalls habe ich jetz alle gleich geändert, und 5 von 6 funzen
diese hier nicht:

$query2 = mysql_query("SELECT artnr2 from artikel where lk2='" . $lieferant . "'");
while($result2=mysql_fetch_array($query2,MYSQL_ASSOC))
  {
   if($result2['artnr2'] == $data[$artnr])
    {
     $query2 = mysql_query("update artikel set ek2='" . $data[$ek] . "'where lk2='" . $lieferant . "' AND artnr2='" . $data[$artnr] . "'");
echo "Update von Artikel: " . $data[$text];
if($query2) echo " --> OK"; else echo " --> Fehler";
echo "<br><hr><br>";
$gefunden=1;
}
}

jemand ne idde warum?

  1. Aloha!

    jemand ne idde warum?

    PHP oder MySQL werden wissen, warum das nicht geht, und dir eine Fehlermeldung gegeben haben. Wie lautet die? Handle entsprechend.

    Ohne Fehlermeldung muß man deinen Code ziemlich genau unter die Lupe nehmen - mit Fehlermeldung kann man sofort drauf tippen, wo das Problem liegt.

    - Sven Rautenberg

  2. nachtrag

    $result2 is übrigens vom typ mysql result
    und er gibt mit fehler, dass kein gültiges mysql result übergeben wurde

  3. $query2 = mysql_query("SELECT artnr2 from artikel where lk2 = '$lieferant'");
    $ergebnis = mysql_query($query2);

    while($row = mysql_fetch_object($ergebnis))
      {
      $artnr2 = $row->artnr;
      }

    if($artnr2 == $deinVergleich)
      {
      $update = mysql_query("UPDATE WHERE bla bla bla");
      $gibihm = mysql_query($update);

    if($gibihm = true)
      {
      echo "passt";
      }
      else
     ...

    mfg
    fks

    ich blick zwar nicht ganz durch, aber du hast ziemlich sicher einen fehler in einer der mysql_query

    1. ich blick auch nich ganz durch, weil selbiges woanders funzt ......... daher is das für mich mysterious ......

      danke für dein beispiel, nur möcht ich das jetz nich ändern, wiel ich das dann überall ändern müsste ......... wo genau das ja auch funktioniert ........ ich werd ma zeichen für zeichen vergleichen .......  auch wenn ich da nix verändert habe

      1. ich blick auch nich ganz durch, weil selbiges woanders funzt ......... daher is das für mich mysterious ......

        danke für dein beispiel, nur möcht ich das jetz nich ändern, wiel ich das dann überall ändern müsste ......... wo genau das ja auch funktioniert ........ ich werd ma zeichen für zeichen vergleichen .......  auch wenn ich da nix verändert habe

        Sven hat es zwar bereits gesagt, aber nochmal: Lerne doch bitte, die Fehlermeldungen mitzuliefern (siehe http://www.php.net/manual/de/function.mysql-error.php) und/oder die Anleitung zumindest zu überfliegen.

        Gruß,
          soenk.e

        1. ja ich weiß, vergaß ich in meiner verzweiflung
          ich hab das ganze oben nochmal geposten, komplett und nich in scheiben ......... is zwar doof doppelt zu posten, aber ich dachte es wäre besser *egoistbin*

          danke trotzdem für die aufmerksamkeit

          1. Aloha!

            die einzigste fehlermeldung is:
            Warning: Supplied argument is not a valid MySQL result resource in line 84

            Das bedeutet, dein SQL-Query ist falsch - irgendwie falsch. Mehr sagt dir mysql, wenn du es fragst. Deshalb: Wo ist die Ausgabe von mysql_error()?

            $query2 = mysql_query("SELECT artnr2 from artikel where lk2='" . $lieferant . "'");
            while($result2=mysql_fetch_array($query2,MYSQL_ASSOC))
            line 84 --> {
            if($result2['artnr2'] == $data[$artnr])

            ich weiß nich was an dem script falsch sein soll

            Am Script selbst ist nichts falsch - außer das die Datenbank nicht so antwortet, wie du denkst.

            Was steht denn in $lieferant drin? Das ist die einzige Variable, die es gibt in deinem SQL-Query - da muß der Fehler liegen!

            - Sven Rautenberg