• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

question-closed Co jest nie tak w tym kodzie?

Object Storage Arubacloud
0 głosów
393 wizyt
pytanie zadane 31 grudnia 2015 w PHP przez McShadow Obywatel (1,050 p.)
zamknięte 2 stycznia 2016 przez McShadow

Mam tutaj taki kod i nwm co jest nie tak prosze o pomoc
 

$sql = "SELECT * FROM Content";
$result = $conn->query($sql);

if ($result->num_rows > 0) {
    // output data of each row
    while($row = $result->fetch_assoc()) {
        echo "<td>".$result['post']."</td>";
        echo "<td>".$result['autor']."</td>";
        echo "<td>".$result['data']."</td>";
    }
} else {
    echo "0 results";
}
$conn->close();
?>

 

komentarz zamknięcia: Problem zrowiązany

5 odpowiedzi

0 głosów
odpowiedź 31 grudnia 2015 przez Comandeer Guru (602,560 p.)
My też nie, bo nie podałeś błędu.
komentarz 31 grudnia 2015 przez McShadow Obywatel (1,050 p.)
mam nadzieje ze ułatwiłem trochę
komentarz 31 grudnia 2015 przez Comandeer Guru (602,560 p.)
A masz linijkę, w której łączysz się z bazą?
komentarz 31 grudnia 2015 przez writen Nałogowiec (29,060 p.)
A gdzie masz klucz główny w swojej tabeli? Każdy rekord powinien posiadać swój unikalny identyfikator.
komentarz 31 grudnia 2015 przez Mariusz O Mądrala (5,290 p.)
Brak klucza nie uniemożliwia pobrania rekordów.
komentarz 31 grudnia 2015 przez Comandeer Guru (602,560 p.)
Akurat w przypadku mysqli i odpowiedniego poziomu raportowania może ;)
0 głosów
odpowiedź 31 grudnia 2015 przez Konrad Nabożny Stary wyjadacz (13,460 p.)

Napisz nam jaki chcesz osiągnąć tym kodem efekt, a jaki otrzymujesz. 

0 głosów
odpowiedź 31 grudnia 2015 przez Mariusz O Mądrala (5,290 p.)
Gdy wyświetlasz... to użyłbym $row[index], a nie $result[index]; (chyba :3)

A jak dla mnie... to po prostu nie połączyłeś się poprawnie z bazą danych.

Do debugowania tego typu rzeczy przydaje się mysql_error.
komentarz 31 grudnia 2015 przez McShadow Obywatel (1,050 p.)
<?php
$servername = "mysql.hostinger.pl";
$username = "u528067218_kuba";
$password = "*************";

$conn = new mysqli($servername, $username, $password);

if ($conn->connect_error) {
    die("Connection failed: " . $conn->connect_error);
}
echo "Polaczenie ustanowione";

$sql = "SELECT * FROM tabela";
$result = $conn->query($sql);

if ($result->num_rows > 0) {
    // output data of each row
    while($row = $result->fetch_assoc()) {
        echo "<td>".$row['post']."</td>";
        echo "<td>".$row['autor']."</td>";
        echo "<td>".$row['data']."</td>";
         echo "<td>".$row['id']."</td>";
    }
} else {
    echo "0 results";
}
$conn->close();
?>
komentarz 31 grudnia 2015 przez Mariusz O Mądrala (5,290 p.)
Musisz wybrać bazę danych - jako czwarty parametr połączenia.
komentarz 31 grudnia 2015 przez McShadow Obywatel (1,050 p.)
Dziekuje za pomoc działa
komentarz 31 grudnia 2015 przez Mariusz O Mądrala (5,290 p.)
Proszę.. tylko nast. razem NAPRAWDĘ proszę o cały kod; bo to naprawde nie jest tak, że chcę ukraść Twoje skomplikowane kody i tajne hasła... często przyczyna jest zupełnie gdzie indziej. Z PHP jeszcze nie jest tak strasznie... poucz się c i zobacz niemożliwe.
komentarz 31 grudnia 2015 przez McShadow Obywatel (1,050 p.)
ok rozumiem dziekuje jeszcze raz i szczęsliwego nowego roku
0 głosów
odpowiedź 31 grudnia 2015 przez writen Nałogowiec (29,060 p.)

Wypadało by żebyś najpierw sprawdził czy zapytanie w ogóle się wykonało, np. ifem:

if($result) { //reszta kodu } else { //błąd }

No i masz błąd wewnątrz pętli while. Zamiast zmiennej $row używasz $result.

 

komentarz 31 grudnia 2015 przez McShadow Obywatel (1,050 p.)
O kurde nie zauważyłem tego dzięki
0 głosów
odpowiedź 31 grudnia 2015 przez Radekoslaw123 Gaduła (3,080 p.)
edycja 1 stycznia 2016 przez Radekoslaw123
Weź spróbuj coś takiego:

$sql = "SELECT * FROM Content";
$result = $conn->query($sql);
 
if ($result->num_rows > 0) {
    // output data of each row
        foreach($result as $data) {
        echo "<td>".$data['post']."</td>";
        echo "<td>".$data['autor']."</td>";
        echo "<td>".$data['data']."</td>";
    }
}
 else {
    echo "0 results";
}
$conn->close();

 

komentarz 31 grudnia 2015 przez McShadow Obywatel (1,050 p.)

taki error 
Parse error: syntax error, unexpected 'else' (T_ELSE) in /home/u528067218/public_html/wyslij.php on line 25

komentarz 31 grudnia 2015 przez writen Nałogowiec (29,060 p.)
Zmieniłeś tylko ciało if'a, co i tak się nie wykona, bo warunek się nie spełnia.

A w dodatku zapomniałeś go zamknąć.
komentarz 1 stycznia 2016 przez Radekoslaw123 Gaduła (3,080 p.)
faktycznie, robione bez testu, z głowy :V nie zauważyłem, spróbuj z tego teraz
komentarz 1 stycznia 2016 przez Radekoslaw123 Gaduła (3,080 p.)
Jak się nie wykona if?

Jak num_rows będą się zgadzać
komentarz 1 stycznia 2016 przez writen Nałogowiec (29,060 p.)

Radek, przeczytaj też inne komentarze autora, np. ten:

własnie nie ma błędu tylko wyswieta sie 0 results tylko nwm czemu?

Po prostu warunek się nie spełnia, więc nawet nie dochodzi do wykonania kodu, który mu zmieniłeś. Na potrzeby tego tematu twoja odpowiedź nie ma żadnego znaczenia.

Podobne pytania

–2 głosów
0 odpowiedzi 133 wizyt
pytanie zadane 7 stycznia 2017 w PHP przez Geek1234 Użytkownik (570 p.)
0 głosów
4 odpowiedzi 170 wizyt
pytanie zadane 3 stycznia 2016 w PHP przez R3VIK Nowicjusz (200 p.)
0 głosów
1 odpowiedź 246 wizyt
pytanie zadane 8 sierpnia 2015 w PHP przez daniel89 Użytkownik (700 p.)

92,676 zapytań

141,580 odpowiedzi

320,058 komentarzy

62,039 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj.

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...