Problem z update set

Wszystko o językach skryptowych takich jak PHP i Perl, serwerach WWW, CGI, bazach danych i języku SQL.
supergol
Posty: 15
Rejestracja: 09 sty 2021, 17:28:01
Płeć: Niewybrana
User Agent: Chrome Windows 1366x768

Problem z update set

Post autor: supergol »

Dzień Dobry, niestety nie mogę dać rady z pewną sprawą. Chodzi o update ... set .
Najpierw jest logowanie użytkownika (autora) do pliku index.php. Po zalogowaniu autor otrzymuje, widok tylko z informacjami przeznaczonymi dla niego. Jest to jego obszar roboczy. W index.php jest również podmontowany CKEdytor ujęty w ramy formularza. Autor po zakończeniu pisania tekstu w ckeditor, klika "Wyślij" i ten tekst ląduje w bazie poprzez Inser into. Spoko, jest git. Z pliku index.php, (czyli ze swojego obszaru roboczego) po kliknięciu linka "twoje teksty", autor może zobaczyć na kolejnej stronie, wszystkie teksty jakie napisał. Może je skasować i teoretycznie .... poprawić. I tu jest klops. Kasowanie działa perfecto. Ale update ... nie.
Autor klika wybrany link do swojego artykułu. Zostaje przeniesiony do strony edycji. Aby ta edycja była czytelna, również jest ckedytor w którym wyświetlam po id, dokładnie ten sam tekst, który wybrał. Poprawia go, klika "Wyślij", otrzymuje informacje, że tekst został poprawiony i wysłany. I nic. Nic się nie zmienia. Nie ma update.
Poniżej plik w którym wyświetlam tekst do edycji w ckeditor.

Kod: Zaznacz cały

<?php
session_start();
if (!isset($_SESSION['zalogowany']))
{ header('Location: index.php');
exit();	
}?>
<!DOCTYPE HTML>
<html lang="pl">
<head>
 <script src="//cdn.ckeditor.com/4.15.1/full/ckeditor.js"> </script>
	<title> obszar roboczy autora plik poprawiania tekstu </title>
</head>
<html>
<body>

	
<?php
include('polacz.php');
$id=$_GET['id']; 

$result = mysql_query("SELECT * FROM uzytkownicy  where id='$id' "); 
while($res = mysql_fetch_array($result))
    {
?>

<form method="post" name="jeden" action="poprawobr.php">
<p>wyślij poprawiony artykuł </p>

<textarea name="publikacja" type="text">	
	  <?php echo $res['publikacja']; ?>
</textarea>  
<input type="submit" name="submit" value="GO"/>  </form> 
<script type="text/javascript"> CKEDITOR.replace('publikacja'); </script>

<?php;}?> 

</body> </html>
A tutaj plik poprawobr.php, czyli ten, który ma załadować zmieniony tekst do bazy.

Kod: Zaznacz cały

<?php
session_start();
if (!isset($_SESSION['zalogowany']))
{ header('Location: index.php');
exit();	
}?>
<?php
$id=$_GET['id']; 
$pax = $_POST['publikacja'];
    
if (isset($_POST["submit"])) 
       
            {
                $host = "mysql.cba.pl";
                $db_user =" user";
                $db_password ="pass";
                $db_name ="baza";

                $conn = mysqli_connect($host,$db_user,$db_password,$db_name) or die ("błąd");
                $wynik = $conn->query("SELECT * FROM uzytkownicy");
                if ($wynik->num_rows>0){
                $sql= $conn->query("UPDATE uzytkownicy SET publikacja = '$pax'  WHERE ID = '$id'");    
                echo "Wyslales dane do bazy. Rekkord został uaktualniony";
            }
            mysqli_close($conn);
            }
        else{
            echo" Cos poszlo nie tak";
        }
?>
Czy problem może stanowić mysqli zamiast mysql? Liczę na wyrozumiałość i wsparcie.
supergol
Posty: 15
Rejestracja: 09 sty 2021, 17:28:01
Płeć: Niewybrana
User Agent: Chrome Windows 1920x1080

Problem z update set

Post autor: supergol »

Rozwiązane. Działający update set powinien wyglądać mniej więcej tak:

Kod: Zaznacz cały

<?php

	session_start();
	
	if (!isset($_SESSION['zalogowany']))
	{
		header('Location: index.php');
		exit();	
	}

?>

<!DOCTYPE HTML>
<html lang="pl">
<head>
	<meta charset="utf-8" />
	<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1" />
	<meta http-equiv="Content-type" content="text/html; charset=iso-8859-2"/>



 <script src="//cdn.ckeditor.com/4.15.1/full/ckeditor.js"> </script>

	<title> mainpanel </title>
</head>
<html>
<body>



<div id="trinity">



<?php
include('zeta.php');
$id=$_GET['id']; 

$result = mysql_query("SELECT * FROM uzytkownicy  where id='$id'"); 
while($row = mysql_fetch_array($result))
    {
$art= $row['artexy']; 
$t= $row['tytul']; 

;}?> 
  

<div id="morpheus"> 
<div id="oracle"> 

<form method="post" action="#"> 

<p>Poprawianie już napisanego artykułu</p>

			<textarea name="artexy" type="text" value=""> 
			  <?php echo $art  ?>
			</textarea>

			<script type="text/javascript">
				CKEDITOR.replace('artexy');
			</script>
		
<input type="text" name="tytul" value="<?php echo $t ?> "> </input>			
<input type="submit" name="sub"/>
		</p>
	</form>
	
	
	
	
	
<?php                
include('zeta.php');
$id=$_GET['id'];
$art=$_POST['artexy'];
$t=$_POST['tytul'];

if($_POST['sub'])
    {
$result=("UPDATE uzytkownicy SET artexy='$art', tytul='$t' WHERE id='$id'");
mysql_query($result);

if (!mysql_query($result))  {   die('Bł&#177;d: ' . mysql_error());   }
echo "<font color=\"red\"> <b> Poprawiony tekst wysłany do bazy </b></font><br>

<a href='artowner.php'> Powrót do listy publikacji --> </a> <br>";

}?>

</div>
</div>
</body>
</html>
Awatar użytkownika
endriu888
Obsługa CBA
Posty: 1536
Rejestracja: 23 sty 2012, 21:02:33
Strona na CBA.pl: katalogfirm.c0.pl
Płeć: Niewybrana
User Agent: Firefox Windows 1024x768
Kontakt:

Problem z update set

Post autor: endriu888 »

Witam

czyli rozumiem, że Pan sobie poradził z tym problem i można ten temat zamknąć?
Czy wiesz, że:
  • W Panelu CBA w sekcji "wsparcie" jest dedykowany system ticketów (obsługi technicznej)
  • Odpowiadamy na Forum oraz na adres mailowy obsluga(malpa)cba.pl
  • Jesteśmy również na Facebooku! Znajdź nas na facebook.com/hostingcba | cba.pl
W czym jeszcze możemy pomóc?
supergol
Posty: 15
Rejestracja: 09 sty 2021, 17:28:01
Płeć: Niewybrana
User Agent: Chrome Windows 1920x1080

Problem z update set

Post autor: supergol »

Tak. Do zamknięcia.
Awatar użytkownika
endriu888
Obsługa CBA
Posty: 1536
Rejestracja: 23 sty 2012, 21:02:33
Strona na CBA.pl: katalogfirm.c0.pl
Płeć: Niewybrana
User Agent: Firefox Windows 1024x768
Kontakt:

Problem z update set

Post autor: endriu888 »

Witam

dobrze w takim razie zamykam.
Czy wiesz, że:
  • W Panelu CBA w sekcji "wsparcie" jest dedykowany system ticketów (obsługi technicznej)
  • Odpowiadamy na Forum oraz na adres mailowy obsluga(malpa)cba.pl
  • Jesteśmy również na Facebooku! Znajdź nas na facebook.com/hostingcba | cba.pl
W czym jeszcze możemy pomóc?
Zablokowany