Avaleht
uus teema   vasta Tarkvara »  WWW »  mysql päring märgi kõik teemad loetuks
märgi mitteloetuks
vaata eelmist teemat :: vaata järgmist teemat
Hinnavaatlus :: Foorum :: Uudised :: Ärifoorumid :: HV F1 ennustusvõistlus :: Pangalink :: Telekavad :: HV toote otsing
autor
sõnum Saada viide sõbrale. Teata moderaatorile
otsing:  
armin81
Kreisi kasutaja

liitunud: 12.02.2003



Autoriseeritud ID-kaardiga

sõnum 09.04.2015 19:20:13 mysql päring vasta tsitaadiga

Enese harimise eesmärgil sai ette võetud üks projekt PHP ja MySQL baasil. Leht on ülesse pandud virtuaalmasinas ubuntu serverisse.
PHP-ga alustasin aasta alguses. Google on siiani sõbraks olnud. Nüüd aga üks päring ei anna tulemust ja ise ei leia sellele põhjust.
Kood mis tulemust ei anna:

    mysqli_report(MYSQLI_REPORT_ALL ^ MYSQLI_REPORT_INDEX);
   $conn = new mysqli($serverAdress, $serverUsername, $serverPassword, $serverDatabase);
   if ($conn->connect_error)
   {
      die("Connection failed: " . $conn->connect_error);
   }
    $sql = "SELECT * FROM tegijad";
    var_dump ($sql);echo "<br>";
    $result = $conn->prepare($sql);
    $result->execute();
//    catch(Exception $e){echo "<center>Midagi l&auml;ks nihu</center>";}
    var_dump($result);echo "<br>";
    echo 'Success... ' . $conn->host_info . "<br>";
    if(!$result)
   {
      echo "<br>0 t&ouml;&ouml;tajat.<br>";
   } else {
   if ($result->num_rows > 0)
    {
        echo "<br><center>T6ouml;&ouml;tajad:<br>";
        while($row = $result->fetch_assoc())
      {
         echo $row["Nimi"].$spacing.$row["Aktiivne"]."<br>";
        }
        echo "</center><br>"; 
    }
    }
    //var_dump($result);
    $result->close();
    $conn->close();


See kood annab sellise tulemuse:

string(21) "SELECT * FROM tegijad"
object(mysqli_stmt)#2 (10) { ["affected_rows"]=> int(-1) ["insert_id"]=> int(0) ["num_rows"]=> int(0) ["param_count"]=> int(0) ["field_count"]=> int(3) ["errno"]=> int(0) ["error"]=> string(0) "" ["error_list"]=> array(0) { } ["sqlstate"]=> string(5) "00000" ["id"]=> int(1) }
Success... 127.0.0.1 via TCP/IP


Päring tehakse, aga andmebaasist vastust ei saada.

Samas toimib see kood, mis lisab nime andmebaasi:


    if(isset($_POST['LisaTegija']))
    {
        $sisestatud_tegija = "'".test_input($_POST["sisestatudTegija"])."'";   
       $conn = new mysqli($serverAdress, $serverUsername, $serverPassword, $serverDatabase);
       if ($conn->connect_error)
        {
          die("Connection failed: " . $conn->connect_error);
       }
        $sql = "INSERT INTO tegijad (Nimi,Aktiivne) VALUES ($sisestatud_tegija,1)";
        $result = $conn->prepare($sql);
        try{$result->execute();}
        catch(Exception $e){echo "<center>Midagi l&auml;ks nihu</center>";}
        if(!$result)
       {
          echo "<center>Midagi l&auml;ks nihu</center>";
       } else {
       if ($result->num_rows > 0)
            {
                echo "<center>Lisatud &uuml;ks t&ouml;&ouml;taja: ".$sisestatud_tegija;
                echo "</center>"; 
            }
        }


Andmebaas ise on selline:



Oskaks keegi öelda, mis valesti on?

_________________
Otsid mööblit? Uuri Siit või Siit.
Soovid kolida? Vaata Siia.
Kommentaarid: 96 loe/lisa Kasutajad arvavad:  :: 0 :: 0 :: 86
tagasi üles
vaata kasutaja infot saada privaatsõnum
gynterk
HV kasutaja

liitunud: 17.01.2004




sõnum 09.04.2015 22:07:04 vasta tsitaadiga

Pead ei anna (testinud ei ole), aga proovi midagi sellist:

php:
  1. mysqli_report(MYSQLI_REPORT_ALL ^ MYSQLI_REPORT_INDEX);
  2. $conn = new mysqli($serverAdress, $serverUsername, $serverPassword, $serverDatabase);
  3.  
  4. if ($conn->connect_error)
  5.     die("Connection failed: " . $conn->connect_error);
  6.  
  7. $sql = "SELECT * FROM tegijad";
  8. var_dump ($sql);echo "<br>";
  9.  
  10. $stmt$conn->stmt_init();
  11.  
  12. if ($stmt->prepare($sql)) {
  13.     $stmt->execute();
  14.     $result = $stmt->get_result();
  15.  
  16.     //catch(Exception $e){echo "<center>Midagi l&auml;ks nihu</center>";}
  17.     var_dump($result);echo "<br>";
  18.  
  19.     echo 'Success... ' . $conn->host_info . "<br>";
  20.  
  21.     if (!$result) {
  22.         echo "<br>0 t&ouml;&ouml;tajat.<br>";
  23.     } else {
  24.         if ($result->num_rows > 0) {
  25.             echo "<br><center>T6ouml;&ouml;tajad:<br>";
  26.  
  27.             while ($row = $result->fetch_assoc())
  28.                 echo $row["Nimi"].$spacing.$row["Aktiivne"]."<br>";
  29.             echo "</center><br>";
  30.         }
  31.     }
  32. }
  33.  
  34. //var_dump($result);
  35. $stmt->close();
  36. $conn->close();
Kommentaarid: 5 loe/lisa Kasutajad arvavad:  :: 0 :: 0 :: 5
tagasi üles
vaata kasutaja infot saada privaatsõnum
armin81
Kreisi kasutaja

liitunud: 12.02.2003



Autoriseeritud ID-kaardiga

sõnum 09.04.2015 23:14:30 vasta tsitaadiga

get_result() vajab mysqlnd-d. php versioon on 5.5.9. mysqlnd ei ole saadaval hetkel icon_rolleyes.gif Peab veel uurima seda asja.

Edit. Sain serverisse mysqlnd peale. Nüüd toimib. Ole tänatud icon_smile.gif

_________________
Otsid mööblit? Uuri Siit või Siit.
Soovid kolida? Vaata Siia.
Kommentaarid: 96 loe/lisa Kasutajad arvavad:  :: 0 :: 0 :: 86
tagasi üles
vaata kasutaja infot saada privaatsõnum
näita postitusi alates eelmisest:   
uus teema   vasta Tarkvara »  WWW »  mysql päring
[vaata eelmist teemat] [vaata järgmist teemat]
 lisa lemmikuks
näita foorumit:  
 ignoreeri teemat 
sa ei või postitada uusi teemasid siia foorumisse
sa ei või vastata selle foorumi teemadele
sa ei või muuta oma postitusi selles foorumis
sa ei või kustutada oma postitusi selles foorumis
sa ei või vastata küsitlustele selles foorumis
sa ei saa lisada manuseid selles foorumis
sa võid manuseid alla laadida selles foorumis



Hinnavaatlus ei vastuta foorumis tehtud postituste eest.