Siema, potrzebuję pomocy mam stronkę z dynamicznymi odnośnikami, chciałbym aby w podstronie archivum.php generowała się treść w zależności od klikniętego linku, jak to zrobić
Dane zawarte są w tabelach mysql.
<?php
$nazwa = $_POST['nazwa'];
$_SESSION['nazwa'] = $nazwa;
$link = mysqli_connect("localhost", "root", "", "pomiar");
if (mysqli_connect_errno()) {
printf("Connect failed: %s\n", mysqli_connect_error
()); }
else
{
if ($result = mysqli_query($link, "SHOW TABLES LIKE '$nazwa'")) {
$row_cnt = mysqli_num_rows($result);
echo("Ilość tabeli o tej samej nazwie: ".$row_cnt); if($row_cnt > 0){
echo '<br />'.'<span style="color:red">'."Error: Wpis o podanej nazwie już istnieje. Zmień nazwę i ponów próbę.".'</span>'; }
else
{
$sql_insert = mysqli_query($link, 'CREATE TABLE '.$nazwa.' (`id` INT NOT NULL AUTO_INCREMENT,`time` timestamp,`sensor1`
float,`sensor2` float,`sensor3` float,PRIMARY KEY (id))');
echo '<br />'.'<span style="color:green">'."Dodano poprawnie nową tabelę o nazwie: ".$nazwa.'</span>'.'<br /><hr />'; }
}
}
echo '<h1>'."Lista baz danych:".'</h1>'; $tmp = mysqli_query($link, "SHOW TABLES from pomiar");
echo '<table border="1" cellspacing="2" cellpadding="2">'; echo '<tr><td>Nazwa:</td><td>Usuń:</td><td>Akcja:</td></tr>'; while($tmp1 = mysqli_fetch_row($tmp))
{
echo '<tr><td>'.'- '.'<b>'.($tmp1[0]).'</b></td>'; echo '<td><center>'."(-)".'</center></td>'; <a href =\"archivum.php?a=edit&name={$tmp1[0]}\">Zobacz</a>
</td>";
}
mysqli_close($link);
?>
oraz formularz nadający nazwę nowej tabeli mysql:
<html>
<head>
<meta charset = "UTF-8" />
<title>Strona Główna</title>
</head>
<body>
<form action="engine.php" method="post">
<input type="text" name="nazwa">
<input type="submit" value="send">
</form>
</body>
</html>
Nie patrzcie na zmienną sesyjną z pierwszego skryptu nie spełnia ona żadnej funkcji - kombinowałem. Skryptu php strony archivum nie wrzucam bo oprócz znacznika <?php ?> i zmiennej sesyjnej nic tam nie ma.
Dzięki za podsunięcie rozwiązania. Pozdro
Moi drodzy temat uważam za zamknięty podaje rozwiązanie:
skrypt: engine.php
<?php
$nazwa = $_POST['nazwa'];
$_SESSION['nazwa'] = $nazwa;
$link = mysqli_connect("localhost", "root", "", "pomiar");
if (mysqli_connect_errno()) {
printf("Connect failed: %s\n", mysqli_connect_error
()); }
else
{
if ($result = mysqli_query($link, "SHOW TABLES LIKE '$nazwa'")) {
$row_cnt = mysqli_num_rows($result);
echo("Ilość tabeli o tej samej nazwie: ".$row_cnt); if($row_cnt > 0){
echo '<br />'.'<span style="color:red">'."Error: Wpis o podanej nazwie już istnieje. Zmień nazwę i ponów próbę.".'</span>'; }
else
{
$sql_insert = mysqli_query($link, 'CREATE TABLE '.$nazwa.' (`id` INT NOT NULL AUTO_INCREMENT,`time` timestamp,`sensor1`
float,`sensor2` float,`sensor3` float,PRIMARY KEY (id))');
echo '<br />'.'<span style="color:green">'."Dodano poprawnie nową tabelę o nazwie: ".$nazwa.'</span>'.'<br /><hr />'; }
}
}
echo '<h1>'."Lista baz danych:".'</h1>'; $tmp = mysqli_query($link, "SHOW TABLES from pomiar");
echo '<table border="1" cellspacing="2" cellpadding="2">'; echo '<tr><td>Nazwa:</td><td>Usuń:</td><td>Akcja:</td></tr>'; while($tmp1 = mysqli_fetch_row($tmp))
{
echo '<tr><td>'.'- '.'<b>'.($tmp1[0]).'</b></td>'; echo '<td><center>'."(-)".'</center></td>'; <a href =\"archivum.php?a=look&name={$tmp1[0]}\">Zobacz</a>
</td>";
}
mysqli_close($link);
?>
Dla osób które lubią się bawić, a dopiero się uczą rozwiązanie znajduje się tu:
<a href =\"archivum.php?a=look&name={$tmp1[0]}\">Zobacz</a>
jest to chyba 41 linia kodu, następnie w pliku archivum pobieram poleceniem $adres =
$_GET['name'];
skrypt: archivum.php
<?php require_once("connect.php"); ?>
<html>
<head>
<meta charset = "UTF-8" />
<title>Archiwum</title>
</head>
<body>
<table width="500" border="1" cellspacing="2" cellpadding="5">
<tr>
<td><b>ID</b></td>
<td><b>Data i czas:</b></td>
<td><b>Sensor 1</b></td>
<td><b>Sensor 2</b></td>
<td><b>Sensor 3</b></td>
</tr>
<?php
$adres = $_GET['name'];
{
echo '<td>'.$linha["id"].'</td>'; echo '<td>'.$linha["sensor1"].'</td>'; echo '<td>'.$linha["sensor2"]. '</td>'; echo '<td>'.$linha["sensor3"].'</td>'; }
?>
</table>
</body>
</html>
później zrobię parę kosmetycznych zmian choćby na mysqli. Temat do zamknięcia! POZDRO!
Ten post edytował sereknr1 22.12.2017, 22:54:03