Nabídka

Zobrazit příspěvky

Zde lze prohlédnout všech příspěvky uživatele. Jsou zde vidět pouze příspěvky z oblastí, do kterých máte přístup.

Nabídka Zobrazit příspěvky

Příspěvky - Honzasko

#1
Citace od: Kit kdy 20. 10. 2020, 08:41:31
Citace od: Honzasko kdy 20. 10. 2020, 06:12:03
Citace od: Kit kdy 19. 10. 2020, 19:28:54
K čemu je dobrá metoda escape_string()? Je to něco podobného jako metoda quote() v PDO?

Když budeš používat prepared statements, tak na tyhle nesmysly zapomeneš.
PDO ani prepared statements jsem nikdy nepoužívál

Prepared statements vypadají v MySQLi poněkud obskurně, ale zvyknout se na to dá. V PDO jsou vyřešeny mnohem lépe.

Aspoň vyměň ty pluska za tečky tam, kde nechceš sčítat čísla, ale spojovat stringy.
To jsem udělal a vyřešilo to oba 2 problémy
#2
Citace od: Kit kdy 19. 10. 2020, 19:28:54
K čemu je dobrá metoda escape_string()? Je to něco podobného jako metoda quote() v PDO?

Když budeš používat prepared statements, tak na tyhle nesmysly zapomeneš.
PDO ani prepared statements jsem nikdy nepoužívál
#3
Citace od: tecka kdy 19. 10. 2020, 18:05:58
num_rows nemusí obsahovat správnou hodnotu dokud se nenačtou všechna data a řetězce se spojují operátorem . (tečka).
jenže ta hodnota je větší
#4
Citace od: tecka kdy 19. 10. 2020, 16:43:23
K PHP je volně dostupná dokumentace s popisy a příklady použití.
https://www.php.net/manual/en/mysqli.real-escape-string.php
https://www.php.net/manual/en/mysqli-result.num-rows.php
to ano,aji jsem to podle toho dělal kromě toho stringu ale v druhém problému rozhodně není problém se stringem
#5
Poslední dobou zkouším dělat chat,server - PHP(webserver),klient - node.js/electron.Všechno to mám propojené přes ajax a přito jsem narazil na problém s php/mysqli.
Problém č.1:
PHP naprosto ignoruje POST z ajaxu či špatně fungující mysqli.
Problém č.2:
PHP neumí správně spočítat počet řádku v mysql db přes mysqli.
Když v konzoli mysql zadám příkaz k přečtení všeho z tabulky tak to krásně funguje,avšak v PHP ne. Funkce fetch_assoc vrací prázdný obsah.

<?php
if(isset($_POST['nick'],$_POST['msg']))
{
 
$conn = new mysqli("localhost","db","","chat");
 
$user = $_POST['nick'];
 
$msg = $_POST['msg'];
 
$final_send = $user + ":" + $msg;
 
$final_send = $conn->escape_string($final_send);
 
$conn->query("INSERT into messages(msg)VALUES(".$final_send.");");
 
$conn->close();
}
else
{
 
$conn = new mysqli("localhost","db","","chat");
 
$for_echo = "";
 
$result = $conn->query('SELECT * FROM messages;');
  if(
$result->num_rows > 0)
  {
    echo
$result->num_rows;
    while(
$row = $result->fetch_assoc())
   {
   
$for_echo = $for_echo + "<br>" + $row["msg"];
   }
  }
 
$conn->close();
  echo
$for_echo;
}

?>