`ORDER BY` po zmiennej z `bind_param`

`ORDER BY` po zmiennej z `bind_param`
MA
  • Rejestracja:ponad 6 lat
  • Ostatnio:około 5 lat
  • Postów:63
0
Kopiuj
$id='3';
if ($stmt = $mysqli->prepare("DELETE FROM $TABLE WHERE id = ?"))
{
														
														$stmt->bind_param('i', $id);

														$stmt->execute();
														$stmt->close();
														$mysqli->close();
														
												```

Jak to bedzie z ORDER BY jesli nie przekazuje zadnej zmiennej tylko chce po prostu posortowac wzgledem jednej zmiennej juz zawartej w bazie.
Wyswietla mi blad:

```php
$stmt = $mysqli->prepare("SELECT id, content, time FROM $table ORDER BY = ? DESC");
$stmt->bind_param("s", $time);
$stmt->execute();
$stmt->store_result();
if($stmt->num_rows === 0) exit('No rows');
$stmt->bind_result($idRow, $contentRow, $timeRow); 
while($stmt->fetch()) {
  print $contentRow;
}
var_export($ids);
$stmt->close();

Linia z:

Kopiuj
$stmt->bind_param("s", $time);
edytowany 1x, ostatnio: Patryk27
Patryk27
Moderator
  • Rejestracja:prawie 18 lat
  • Ostatnio:prawie 2 lata
  • Lokalizacja:Wrocław
  • Postów:13042
0

Dlaczego order by =? (skąd to =?)

Inną sprawą jest to, że nie możesz bindować nazw tabel oraz kolumn - bindować możesz jedynie literały.


edytowany 2x, ostatnio: Patryk27
MA
To co zrobic w takiej sytuacji
MA
mozesz podac przyklad jak to ma wygladac ?
Patryk27
Moderator
  • Rejestracja:prawie 18 lat
  • Ostatnio:prawie 2 lata
  • Lokalizacja:Wrocław
  • Postów:13042
0

W takiej sytuacji możesz jedynie wrzucić nazwę kolumny do środka ciągu znaków - identycznie jak masz z nazwą tabeli.


Patryk27
Moderator
  • Rejestracja:prawie 18 lat
  • Ostatnio:prawie 2 lata
  • Lokalizacja:Wrocław
  • Postów:13042
1

Na temat odpowiadaj w postach.

mozesz podac przyklad jak to ma wygladac ?

SELECT id, content, time FROM $table ORDER BY $column DESC


MA
sory ale czym jest column :)
Patryk27
Moderator
  • Rejestracja:prawie 18 lat
  • Ostatnio:prawie 2 lata
  • Lokalizacja:Wrocław
  • Postów:13042
1

Na temat odpowiadaj w postach.

czym jest column

Czymkolwiek, co chciałeś mieć podstawione w miejsce = ? w Twoim oryginalnym zapytaniu.


MA
Przeciez wszystko tyczy sie tematu.
Patryk27
A mimo to cały czas odpowiadasz w komentarzach.
MA
Ale czy tak to wazne dla świata ? :)

Zarejestruj się i dołącz do największej społeczności programistów w Polsce.

Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.