Anzeige:
Ergebnis 1 bis 6 von 6

Thema: jump fehler

  1. #1
    Registrierter Benutzer
    Registriert seit
    07.01.2002
    Ort
    Hannover
    Beiträge
    8

    jump fehler

    Hallo,

    ich übergebe einem php-script beim öffnen zwei werte (angid und kndid),

    die erste abfrage wird noch ausgeführt, die andere nicht mehr.
    da kommt die meldung auf der seite.

    Warning: Unable to jump to row 0 on MySQL result index 3 in /usr/local/httpd/htdocs/detail-angebote.php on line 20

    was will es????

    Danke
    Rene

    detail-angebote.php #

    <?PHP
    mysql_pconnect("192.168.0.99","*","*");
    mysql_select_db("old-mobile");

    $query = "select * from angebote where angid='$angid'";
    $query1 = "select * from kunden where kndid='$kndid'";
    $result = mysql_query($query);
    $result1 = mysql_query($query1);

    $num = mysql_numrows($result);
    $y = mysql_numrows($result1);

    echo "<center>";
    echo "<br><table width=60% border=0>";

    while($i<$num) {
    echo "<tr><td>"; echo
    mysql_result($result,$i,"angid"); echo "&nbsp &nbsp<td>";
    mysql_result($result1,$y,"kndname");echo ", "; echo "<td> ";
    usw...

  2. #2
    jwebworks
    Gast

    Re: jump fehler

    Original geschrieben von viper-rs
    Hallo,

    [..]
    echo "<center>";
    echo "<br><table width=60% border=0>";

    while($i<$num) {
    echo "<tr><td>"; echo
    mysql_result($result,$i,"angid"); echo "&nbsp &nbsp<td>";
    mysql_result($result1,$y,"kndname");echo ", "; echo "<td> ";
    usw...
    deine art und weise, daten aus einem result zu holen passt nicht sooo ganz.

    mit mysql_query führst du den query aus und mit mysql_result
    bekommst du einen zeiger auf das ergebnis zurück.

    eine richtige datenbankabfrage schaut so aus:

    --<schnipp>--

    $db_conn = mysql_connect ( "server", "user", "password" );
    if (!$db_conn) die ("Fehler beim Verbinden mit der Datenbank");

    $sql = "SELECT field1, field2, field3 FROM table WHERE id = \"$id\"";

    $result = mysql_query ($sql, $db_conn);

    while ( $row = mysql_fetch_array ($result, MYSQL_ASSOC)) {
    echo $row["field1"];
    echo $row["field2"] . "<br>";
    echo $row["field3"];
    }

    mysql_close ($db_conn);

    ---<schnipp>---

    verwende lieber "mysql_fetch_array", der befehl ist schneller und
    die zeilen sind leichter zu verwenden. bei mysql_pconnect musst du
    die db-verbindung natürlich nicht wieder trennen.

    cu, stoph.

  3. #3
    Registrierter Benutzer
    Registriert seit
    07.01.2002
    Ort
    Hannover
    Beiträge
    8
    Hi,

    ja das meine abfrage menthode nicht ok ist, glaube ich, das war auch nur einer von vielen.

    der select befehl unten ist besser aber er funzt auch nicht!!!

    $query = "select a.*, k.kndid, k.kndname, k.kndvorname from angebote a, kunden k where angid='$angid' and kndid='$kndid'";
    $result = mysql_query($query);
    .....

    echo
    mysql_result($result,$i,"angid"); echo " <td>";
    mysql_result($result,$i,"kndname"); echo
    ....

    Rene

  4. #4
    jwebworks
    Gast
    Original geschrieben von viper-rs
    Hi,
    $query = "select a.*, k.kndid, k.kndname, k.kndvorname from angebote a, kunden k where angid='$angid' and kndid='$kndid'";
    $result = mysql_query($query);
    hmm, der befehl schaut bis auf den teil zwischen FROM und WHERE ganz
    gut aus. was ist "angebote a, kunden k"? hier ein kurzer auszug
    aus der mysql-doc (unter http://www.mysql.com/doc/ )


    ---<mysqldoc>-------

    A SELECT expression may be given an alias using AS. The alias is used as the expression's column name and can be used with ORDER BY or HAVING clauses. For example:
    mysql> select concat(last_name,', ',first_name) AS full_name
    from mytable ORDER BY full_name;

    The FROM table_references clause indicates the tables from which to retrieve rows. If you name more than one table, you are performing a join. For information on join syntax, see section 6.4.1.1 JOIN Syntax.
    You can refer to a column as col_name, tbl_name.col_name, or db_name.tbl_name.col_name. You need not specify a tbl_name or db_name.tbl_name prefix for a column reference in a SELECT statement unless the reference would be ambiguous. See section 6.1.2 Database, Table, Index, Column, and Alias Names, for examples of ambiguity that require the more explicit column reference forms.
    A table reference may be aliased using tbl_name [AS] alias_name:
    mysql> select t1.name, t2.salary from employee AS t1, info AS t2
    where t1.name = t2.name;
    mysql> select t1.name, t2.salary from employee t1, info t2
    where t1.name = t2.name;

    ---<mysqldoc>-------

    cu, stoph.

  5. #5
    Registrierter Benutzer
    Registriert seit
    12.11.2000
    Beiträge
    63
    hi,

    also ich kenn das auch so das man spalten mit as machen kann aber nicht das man tabellennamen abkürzen kann. imho kann das kein RDBMS. der kann dein from auf garantie nicht auflösen. du müsstest einen mysql fehler zurückkriegen.

    mfg

  6. #6
    Registrierter Benutzer
    Registriert seit
    07.01.2002
    Ort
    Hannover
    Beiträge
    8
    Hi,

    Danke, ich habe jetzt das ergebnis was ich wollte. dank euch habe ich noch mal nachgedacht.

    select a.*, k.kndid, k.kndname, k.kndvorname from angebote a, kunden k where a.angknd=k.kndid and a.angid='$angid'

    Rene

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •