Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Szyfr Cezara - studia
Forum PHP.pl > Forum > Gotowe rozwiązania > Szukam
akurowski
Witam. Mam utworzyć stronkę w php na której będę miał kod z szyfrem cezara. Do tej pory mam działanie szyfru. Wynik szyfru jest też wyświetlany. Ale potrzebuję pomocy z dwiema rzeczami. Pierwsze: Jak wczytać zmienną z klawiatury do zmiennej $tekst. Drugie jak wczytać zmienną do $klucz. I jak zaimplementować przycisk którym potwierdzę moje wpisane dane, a skrypt następnie wypisze wynik szyfru cezara. Proszę o pomoc, jestem zielony w php.



CODE
?>


<?
$tekst = "ALAMAKOTA";

$alfabet = "ABCDEFGHIJKLMNOPQRSTUVWXYZ";
$klucz = 3;

for ($i=0;$i<strlen($tekst);$i++) {
$szyfr .= $alfabet[(strpos($alfabet, $tekst[$i])+3) % strlen($alfabet)];
}

echo $szyfr;

</body>
</html>
markuz
  1. <?php
  2.  
  3. if(isset($_POST['tekst'])) {
  4. $tekst = $_POST['tekst'];
  5. // tutaj twój kod
  6. } else {
  7.  
  8. ?>
  9.  
  10. <form method="post" action="index.php">
  11. <input type="text" name="tekst"/>
  12. <input type="submit" value="Potwierdź"/>
  13. </form>
  14.  
  15. <? } ?>


Pisane z palca ale powinno działać.
akurowski
  1. <form action="index2.php" method="post">
  2. <input name="tekst" type="text" />
  3. <form action="index2.php" method="post">
  4. <input name="klucz" type="text" />
  5. <input type="submit" />
  6. </form>
  7. </form>
  8. Podany tekst:
  9. <?
  10. $tekst = @$_POST['tekst'] ;
  11. echo $tekst ;
  12. ?>
  13.  
  14.  
  15.  
  16.  
  17.  
  18.  
  19.  
  20.  
  21. Podany klucz:
  22. <?
  23. $klucz = @$_POST['klucz'] ;
  24.  
  25. echo $klucz ;
  26. $alfabet = "ABCDEFGHIJKLMNOPQRSTUVWXYZ";
  27. for ($i=0;$i<strlen($tekst);$i++) {
  28. $szyfr .= $alfabet[(strpos($alfabet, $tekst[$i])+$klucz) % strlen($alfabet)];
  29. }
  30. echo $szyfr;
  31. ?>




Mam to w tej formie. Kod pobiera dane od użytkownika, ale nie wyświetla mi szyfru.
Możesz sprawdzić na www.akurowski.cba.pl
viking
A dlaczego masz formularz w formularzu zamiast zrobić dwa pola w jednym formie? Wyrzuć @ sprzed zmiennej bo nie zobaczysz błędu. Zamiast tego sprawdzaj warunkiem czy występuje i jest poprawna. strlen jest wykonywany przy każdej iteracji, przerzuc go do warunków początkowych for.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2024 Invision Power Services, Inc.