kostenloser Webspace werbefrei: lima-city


zwei probleme...kennt mysql funktionen net

lima-cityForumProgrammiersprachenPHP, MySQL & .htaccess

  1. Autor dieses Themas

    jg-baume

    jg-baume hat kostenlosen Webspace.

    Das erste problem
    <html>
    <head>
    <title>ergebn</title>
    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
    </head>

    <body bgcolor="#FFFFFF" text="#000000">
    <p>ERGEBNIS:</p>
    <p>zum Chat<br>
    <?php
    $sql_ja="SELECT ja FROM $tabelle WHERE ja=ja";
    $sql_nein="SELECT nein FROM $tabelle WHERE nein=nein";
    $tabelle="vote";
    $db="php";
    $user="root";
    $pw="";
    $server="localhost";
    $link=mysql_connect($server, $user, $pw);
    mysql_select_db($db, $link);
    $ergebnis_ja=mysql_query($sql_ja, $link);
    //for($i=0;$i<mysql_num_rows($ergebnis_ja);$i++)
    // {
    // $ergebnis_ja[$i]=mysql_fetch_array($ergebnis_ja);
    // }
    $i=0;
    while($ergebnis_ja[$i]=mysql_fetch_array($ergebnis_ja))
    {
    ++$i;
    }
    $stimmen_ja=count($ergebnis_ja);
    $ergebnis_nein=mysql_query($sql_nein, $link);
    for($i=0;$i<mysql_num_rows($ergebnis_nein);$i++)
    {
    $ergebnis_nein[$i]=mysql_fetch_array($ergebnis_nein);
    }
    $stimmen_nein=count($ergebnis_nein);
    echo "Ja, daf?r : ".$stimmen_ja;
    echo "<br>Nein dagegen : ".$stimmen_nein;

    ?>
    </p>
    </body>
    </html>

    Der Kommentar funzt auch net obwohl er eigentlich sollte...ich bekommen halt immer so eine fehlermeldung, dass er die mysql funktion num_rows net kennt.
    nu das 2. problem:(ne ip-sperre, einfach nur in die db schreiben, geht schon)

    <html>
    <head>
    <title>Untitled Document</title>
    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
    </head><body bgcolor="#FFFFFF" text="#000000">

    <?php
    if(!$_POST[ja] AND !$_POST[nein])
    {
    $fehler = "Bitte eine Antwortm?glichkeit w?hlen";
    }
    if($sent==1 AND $fehler)
    {echo $fehler;}
    $datenbank="php-buch";
    $server="localhost";
    $user="root";
    $pw="";
    $tabelle="vote";
    $_POST[datum]=date("d m Y");
    $_POST[ip]=$_SERVER[REMOTE_ADDR];
    $link=mysql_connect($server, $user, $pw);
    mysql_select_db($datenbank, $link);

    //$sql2 = 'SELECT `ip`, `datum` FROM `vote` WHERE 1 LIMIT 0, 30';
    //$ips=mysql_query($sql2, $link);
    //for($i=0;$i<mysql_num_rows($ips);$i++)
    // {
    // $ips[$i]=mysql_fetch_array($ips);
    // }
    //foreach($ips as $ip_abfrage)
    // {
    // if($_POST[ip]==$ip_abfrage)
    // { $fehler="Bereits abgestimmt"; }
    // }

    if($_POST[ja] AND !$fehler)
    {
    $sql = "INSERT INTO `vote` (`ip`, `ja`, `nein`, `datum`) VALUES ('".$_POST[ip]."', 'ja', 'ka', '".$_POST[datum]."')";
    }
    if($_POST[nein] AND !$fehler)
    {
    $sql = "INSERT INTO `vote` (`ip`, `ja`, `nein`, `datum`) VALUES ('".$_POST[ip]."', 'ka', 'nein', '".$_POST[datum]."')";
    }
    mysql_query($sql, $link);
    ?>

    <form name="form1" method="post" action="<?php echo $PHP_SELF; ?>">
    <p>Vote!!!</p>
    <p>was haltet ihr von einem chat???</p>
    <p>
    <input type="radio" value="ja" name="ja">
    Ja, coole Idee<br>
    <input type="radio" name="nein" value="nein">
    Nee, lass stecken
    <input type="hidden" name="ip">
    <input type="hidden" name="datum">
    <input type="hidden" name="sent" value="1">
    <input type="submit" name="Abschicken" value="Abschicken">
    <br>
    ergebnis anzeigen</p>
    </form>
    <?php

    ?>
    </body>
    </html>

    hier liegt der fehler auch wieder im kommentar bei num_rows, hoffe ihr k?nnt mir helfen
  2. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

  3. c*********c

    Versuch mal "mysql_num_rows();" borher in einer Variable zu speichern; also

    $anzahl = mysql_num_rows($ips);

  4. ich seh ausserdem nirgends wo du eine verbindung mit der datenbank ?berhaupt herstellst?! hast du das jetzt xtra einfach nicht mit gepostet oder stellst du gar keine her?
  5. c*********c



    freshprince schrieb:
    ich seh ausserdem nirgends wo du eine verbindung mit der datenbank ?berhaupt herstellst?! hast du das jetzt xtra einfach nicht mit gepostet oder stellst du gar keine her?


    Doch die Verbindungen werden hergestellt!


    $link=mysql_connect($server, $user, $pw);
    mysql_select_db($db, $link);
  6. Autor dieses Themas

    jg-baume

    jg-baume hat kostenlosen Webspace.

    nee, compact disk, wenn ichs inner variable speichere, kommt der selbe fehler... hier isser mal:
    Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource in C:\[...]ergebnis.php on line 33
    hab jetzt nochmal ne andere seite mit dem selben fehler guckst du hier
    http://minisowjet.milten.lima-city.de/termine.php
    da hab ich den coda aba ziemlich un?bersichtlich geschrieben, deshalb poste ich den jetzt net^^. das komische iss, dass das selbe muster bei meinen g?stebuch funzt.

    p.s. nat?rlich kein spam, hab ausversehen raufgeklickt^^
  7. 0******a

    Na mit der Fehlermeldung kann man nat?rlich viel mehr anfangen... zumindest dein Problem l?sen. Das liegt n?mlich ganz woanders. Auszug aus deinem Code:
    1: $sql_ja="SELECT ja FROM $tabelle WHERE ja=ja";
    2: $tabelle = "vote";
    3: $db="php";
    4: $user="root";
    5: $pw="";
    6: $server="localhost";
    7: $link=mysql_connect($server, $user, $pw);
    8: mysql_select_db($db, $link);
    9: $ergebnis_ja=mysql_query($sql_ja, $link);
    10: for($i=0;$i<mysql_num_rows($ergebnis_ja);$i++)

    Der Fehler ist bereits in Zeile 1 zu finden. ja="ja" m?sste es heissen (also vollst?ndig: $sql_ja="SELECT ja FROM $tabelle WHERE ja=\"ja\"";). Ausserdem ist $tabelle erst in der Zeile 2 bekannt/initialisiert, nachdem du es in $sql_ja (Zeile 1) schon benutzt hast.
    Du f?hrst mysql_query() mit der falschen Abfrage aus, bekommst daher in $ergebnis_ja als Wert FALSE gespeichert. Und dann versuchst du mit $ergebnis_ja mysql_num_rows() aufzurufen, das eine Ergebnis Ressource erwartet, aber nur ein FALSE bekommt und sich dar?ber beschwert.
    Du solltest nach jedem Aufruf von MySQL-Funktionen ?berpr?fen, ob ein Fehler zur?ckgegeben wurde (auch nach mysql_connect(), mysql_select_db() und dem ganzen anderen Zeugs.
  8. ausserdem musst du bevor du SELECT..... machst die verbindung herstellen wenn ich das richtig gelernt habe. denn php geht von "oben nach unten".
  9. c*********c



    freshprince schrieb:
    ausserdem musst du bevor du SELECT..... machst die verbindung herstellen wenn ich das richtig gelernt habe. denn php geht von 'oben nach unten'.


    falsch, man muss die Verbindung vor dem mysql_query(); aufgebaut haben, sonst funktionierts nicht!

    Aber die Abfrage kann man auch vor der Verbindung schreiben!
  10. Autor dieses Themas

    jg-baume

    jg-baume hat kostenlosen Webspace.

    Wie sollte den die anfrage deiner meinung nach aussehen, 0-cheka, den rest hab ich gemacht hier nun der neue code:
    <html>
    <head>
    <title>ergebn</title>
    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
    </head>

    <body bgcolor="#FFFFFF" text="#000000">
    <p>ERGEBNIS:</p>
    <p>zum Chat<br>
    <?php
    $tabelle="vote";
    $sql_ja="SELECT `ja`, `nein` FROM $tabelle WHERE `ja`='ja'";
    $sql_nein="SELECT `ja`, `nein` FROM $tabelle WHERE `nein`='nein'";
    $db="php-buch";
    $user="root";
    $pw="";
    $server="localhost";
    $link=mysql_connect($server, $user, $pw);
    mysql_select_db($db, $link);
    //--------------------------------------------JA-----------------------------------------
    $ergebnis_ja=mysql_query($sql_ja, $link);
    for($i=0;$i<mysql_num_rows($ergebnis_ja);$i++)
    {
    $ergebnis_ja[$i]=mysql_fetch_array($ergebnis_ja);
    }
    //-------------------------------------------NEIN----------------------------------------
    $ergebnis_nein=mysql_query($sql_nein, $link);
    $anzahl_datensaetze_nein=mysql_num_rows($ergebnis_nein);
    $stimmen_nein=count($ergebnis_nein);
    //---------------------------------------AUSGABE------------------------------------------
    echo "Ja, daf?r : ".$ergebnis_ja;
    echo "<br>Nein dagegen : ".$stimmen_nein;

    ?>
    </p>
    </body>
    </html>

    Das kommt raus wenn ichs im Browser anschaue:
    ERGEBNIS:

    zum Chat

    Warning: Cannot use a scalar value as an array in C:\Dokumente und Einstellungen\Christian Steinfeldt\Eigene Dateien\Programmierung\PHP\ergebnis.php on line 26

    Warning: Cannot use a scalar value as an array in C:\Dokumente und Einstellungen\Christian Steinfeldt\Eigene Dateien\Programmierung\PHP\ergebnis.php on line 26
    Ja, daf?r : 1
    Nein dagegen : 1

    wasn das nun wieder f?r ein fehler?
  11. c*********c


    $sql_ja="SELECT `ja`, `nein` FROM $tabelle WHERE `ja`='ja'";
    $sql_nein="SELECT `ja`, `nein` FROM $tabelle WHERE `nein`='nein'";


    $sql_ja="SELECT `ja`, `nein` FROM $tabelle WHERE ja='ja'";
    $sql_nein="SELECT `ja`, `nein` FROM $tabelle WHERE nein='nein'";

    so sollte das aussehen, versuchs mal!
  12. Autor dieses Themas

    jg-baume

    jg-baume hat kostenlosen Webspace.

    omg...*selber annen kopf dfass* h?tt ich eigentlich auch selber drauf kommen k?nnen, cd^^. hab das prob nu gel?st indem ich aus

    for($i=0;$i<mysql_num_rows($ergebnis_ja);$i++)
    {
    $ergebnis_ja[$i]=mysql_fetch_array($ergebnis_ja);
    }

    das

    for($i=0;$i<mysql_num_rows($ergebnis_ja);$i++)
    {
    $ergebnis_ja2[$i]=mysql_fetch_array($ergebnis_ja);
    }

    gemacht habe...k?nntet ihr mir vielleicht noch mit der ip-spere helfen, des funzt noch net so ganz, entweder man kann gar net oder so oft wie man will voten, den code poste ich net ihr sollt ihn ja posten^^ hab schon etwas da hab ich aba halt immer das prob
  13. c*********c

    Sollen die IPs in eine DB geschrieben werden? Wenn nein: http://www.lima-city.de/tutorials?m=show&id=1224
  14. Autor dieses Themas

    jg-baume

    jg-baume hat kostenlosen Webspace.

    danke euch allen hab ne l?sung...und nen weiteres prob^^: http://www.lima-city.de/boards?m=thread&id=25511
    kann geschlossen werden
  15. 0******a

    Auf Wunsch geschlossen
  16. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

Dir gefällt dieses Thema?

Über lima-city

Login zum Webhosting ohne Werbung!