Tijdelijk iets opslaan in formulier
ik heb dus ook een voorbeeld functie gemaakt maar daar moet ik de tekst tijdelijk in op slaan om het in edit.php weer op te halen via $_POST wat ik nu heb gedaan is dit:
<input name="text" type="hidden" value=""> daar sla ik het in op
het enige probleem is dat ik dan te zien krijg:
Hoi!! ">
dit komt omdat ik er HTML in de database doe is er een manier om het toch op te slaan zonder het te laten zien?
probeer anders eens <input name="text" type="hidden" value="">
Niet dat dat veel anders is, maar misschien accepteert die de openingstag niet helemaal?
Anders kan je ook niet met een database werken, maar met gewoon bestanden die je opent en wijzigt met fopen() en fread() en zo, maar dat is wel iets ingewikkelder vind ik zelf.
Edit: geen openingstag als voorbeeld gebruiken op phphulp.nl als je hem niet direct daarna afsluit :$
Gewijzigd op 06/01/2005 02:02:00 door Winston Smith
Hoi!! "> te zien
Post je script dan.. en lees even de slimme vragen tutorial (daar heb je nog iets aan in je verdere leven)
Code (php)
1
2
3
4
5
6
7
8
9
10
11
2
3
4
5
6
7
8
9
10
11
<?
if (isset($_GET['id'])){
// $_GET['id'] bestaat.
if ($_GET['id'] != ''){
$id = $_GET['id'];
mysql_connect($mysql_server,$mysql_login,$mysql_pass);
mysql_select_db($mysql_database);
$query = mysql_query("SELECT * FROM vb WHERE id=" . $id) or die (mysql_error());
while ($var = mysql_fetch_object($query)) {
$tekst = $var->tekst;
?>
if (isset($_GET['id'])){
// $_GET['id'] bestaat.
if ($_GET['id'] != ''){
$id = $_GET['id'];
mysql_connect($mysql_server,$mysql_login,$mysql_pass);
mysql_select_db($mysql_database);
$query = mysql_query("SELECT * FROM vb WHERE id=" . $id) or die (mysql_error());
while ($var = mysql_fetch_object($query)) {
$tekst = $var->tekst;
?>
<center>
<form method="POST" action="edit.php?id=">
<input name="text" type="hidden" value="">
<table>
<tr>
<td align="center"><input type="submit" value="Opslaan" name="verzend"></td>
</tr>
<tr>
<td align="center"><input type="reset" value="Invoer wissen" name="B2"></td>
</tr>
</table>
</form>
<form method="POST" action="edit.php?id=">
<input name="text" type="hidden" value="">
<table>
<tr>
<td align="center"><input type="submit" value="Bewerk" name="bewerk2"></td>
</tr>
</table>
</form>
</center>
Dat staat in vb
nu nog edit.php
edit.php is wel 97 regels lang :s
edit.php:
Code (php)
1
2
3
4
5
6
7
8
9
2
3
4
5
6
7
8
9
<?
if (isset($_GET['id'])){
if ($_GET['id'] != ''){
$id = $_GET['id'];
mysql_connect($mysql_server,$mysql_login,$mysql_pass);
mysql_select_db($mysql_database);
$query = mysql_query("SELECT * FROM paginas WHERE id=$id") or die (mysql_error());
while ($var = mysql_fetch_object($query)) {
?>
if (isset($_GET['id'])){
if ($_GET['id'] != ''){
$id = $_GET['id'];
mysql_connect($mysql_server,$mysql_login,$mysql_pass);
mysql_select_db($mysql_database);
$query = mysql_query("SELECT * FROM paginas WHERE id=$id") or die (mysql_error());
while ($var = mysql_fetch_object($query)) {
?>
<form method="POST" action="edit.php?id=">
<table>
<tr>
<td align="center">Code:<br><textarea rows="29" name="text" cols="60"></textarea></td>
</tr>
<tr>
<td align="center">Voorbeeld:<input name="vb" type="checkbox" value="ja"></td>
</tr>
<tr>
<td align="center"><input type="submit" value="Opslaan" name="verzend"></td>
</tr>
<tr>
<td align="center"><input type="reset" value="Invoer wissen" name="B2"></td>
</tr>
</table>
</form>
<form method="POST" action="edit.php?id=">
<table>
<tr>
<td align="center">Code:<br><textarea rows="20" name="text" cols="60"></textarea></td>
</tr>
<tr>
<td align="center">Voorbeeld:<input name="vb" type="checkbox" disabled="true" value="ja"></td>
</tr>
<tr>
<td align="center"><input type="submit" value="Opslaan" name="verzend"></td>
</tr>
<tr>
<td align="center"><input type="reset" value="Invoer wissen" name="B2"></td>
</tr>
</table>
</form>
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
2
3
4
5
6
7
8
9
10
11
12
<?
}
if(isset($_POST['verzend'])){
$tekst = $_POST['text'];
if(isset($_POST['vb'])){
$vb = $_POST['vb'];
if($vb == "ja"){
$sql = "UPDATE vb SET tekst = '$tekst'";
mysql_connect($mysql_server,$mysql_login,$mysql_pass);
mysql_select_db($mysql_database);
$query = mysql_query("$sql") or die (mysql_error());
?>
}
if(isset($_POST['verzend'])){
$tekst = $_POST['text'];
if(isset($_POST['vb'])){
$vb = $_POST['vb'];
if($vb == "ja"){
$sql = "UPDATE vb SET tekst = '$tekst'";
mysql_connect($mysql_server,$mysql_login,$mysql_pass);
mysql_select_db($mysql_database);
$query = mysql_query("$sql") or die (mysql_error());
?>
<head>
<META HTTP-EQUIV="refresh" CONTENT="1; URL=vb.php?id=">
<script language="JavaScript1.2" type="text/javascript"><!--
if (parent.frames.length > 0)
parent.location.href = location.href
//--></script>
</head>
<table>
<tr>
<td align="center">Je word door verwezen klik<a href="vb.php?id="</td></td>
</tr>
</table>
Code (php)
1
2
3
4
5
6
7
8
9
2
3
4
5
6
7
8
9
<?
}
}
else{
$sql = "UPDATE paginas SET tekst = '$tekst' WHERE id =" . $id;
mysql_connect($mysql_server,$mysql_login,$mysql_pass);
mysql_select_db($mysql_database);
$query = mysql_query("$sql") or die (mysql_error());
?>
}
}
else{
$sql = "UPDATE paginas SET tekst = '$tekst' WHERE id =" . $id;
mysql_connect($mysql_server,$mysql_login,$mysql_pass);
mysql_select_db($mysql_database);
$query = mysql_query("$sql") or die (mysql_error());
?>
<table border="1" cellpadding="6" cellspacing="6" width="">
<tr>
<td bgcolor="" align="center" >Het wijzigen van Pagina is gelukt!</td>
</tr>
</table>
mischien is het handiger als ik het weer uit de db haal en dan opsla in paginas en dan wat er in vb staat delete