Jquery geeft alleen melding 'undifined'
ik heb een index.php en een update.php bestand aangemaakt.
Ik wil de site laten veranderen door bij index.php een header en een plaatje te laten kiezen.
Maar wanneer deze wordt ingevuld en op veranderen wordt geklikt komt er in het beeld alleen 'undifined'.
Heb al van alles geprobeerd maar weet nu echt niet meer hoe ik verder moet..
Dit zijn mijn codes:
En mijn database bevat de tabel mobile met kolommen: id, title en logo.
index.php :
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
<?php
include 'connect.php';
$result = mysqli_query($conn,"SELECT title, logo FROM mobile") or die('Geen verbinding met de database.');
$row = mysqli_fetch_array($result);
$title = $row['title'];
$logo = $row['logo'];
?>
<!DOCTYPE html>
<html>
<head>
<title><?php echo $title ?></title>
<!-- viewport -->
<meta name="viewport" content="width=device-width, initial-scale=1">
<!-- jQuery Mobile stylesheet version 1.1.1 -->
<link rel="stylesheet" href="http://code.jquery.com/mobile/1.1.1/jquery.mobile-1.1.1.min.css" />
<!-- jQuery SDN versie 1.7.1 -->
<script src="http://code.jquery.com/jquery-1.7.1.min.js"></script>
<!-- jQuery Mobile versie 1.1.1 -->
<script src="http://code.jquery.com/mobile/1.1.1/jquery.mobile-1.1.1.min.js"></script>
<style>
img {
width : 80%;
height : auto;
max-width:300px;
}
input{
width : 80%;
height : auto;
}
</style>
</head>
<body>
<div data-role="page" id="productsPage">
<div data-role="header"><?php echo $title ?></div>
<div data-role="content">
<center><img src="images/<?php echo $logo; ?>" /></center>
<div data-role="fieldcontain">
<form action="update.php" method="post">
<label for="text"><h3>Header:</h3><br />
<input type="text" name="title" id="password" value="<?php echo $title ?>" />
</label>
<br /><br />
<label for="text"><h3>Logo:</h3><br />
<select name="logo">
<option value="<?php echo $logo; ?>"><?php echo $logo; ?></option>
<?php
$files = glob('../images/*.{jpg,png,gif}', GLOB_BRACE);
foreach($files as $file) {
$file = str_replace("../images/", "", $file);
if($file != $image){
echo '<option value="'. $file . '">'. $file . '</option>';
}
}
?>
</select></label><br /><br />
<input name="submit" type="submit" value="veranderen">
</form>
</div> <!-- content -->
<div data-role="footer">
Joram </div> <!-- footer-->
</div>
</div> <!-- page -->
</body>
</html>
include 'connect.php';
$result = mysqli_query($conn,"SELECT title, logo FROM mobile") or die('Geen verbinding met de database.');
$row = mysqli_fetch_array($result);
$title = $row['title'];
$logo = $row['logo'];
?>
<!DOCTYPE html>
<html>
<head>
<title><?php echo $title ?></title>
<!-- viewport -->
<meta name="viewport" content="width=device-width, initial-scale=1">
<!-- jQuery Mobile stylesheet version 1.1.1 -->
<link rel="stylesheet" href="http://code.jquery.com/mobile/1.1.1/jquery.mobile-1.1.1.min.css" />
<!-- jQuery SDN versie 1.7.1 -->
<script src="http://code.jquery.com/jquery-1.7.1.min.js"></script>
<!-- jQuery Mobile versie 1.1.1 -->
<script src="http://code.jquery.com/mobile/1.1.1/jquery.mobile-1.1.1.min.js"></script>
<style>
img {
width : 80%;
height : auto;
max-width:300px;
}
input{
width : 80%;
height : auto;
}
</style>
</head>
<body>
<div data-role="page" id="productsPage">
<div data-role="header"><?php echo $title ?></div>
<div data-role="content">
<center><img src="images/<?php echo $logo; ?>" /></center>
<div data-role="fieldcontain">
<form action="update.php" method="post">
<label for="text"><h3>Header:</h3><br />
<input type="text" name="title" id="password" value="<?php echo $title ?>" />
</label>
<br /><br />
<label for="text"><h3>Logo:</h3><br />
<select name="logo">
<option value="<?php echo $logo; ?>"><?php echo $logo; ?></option>
<?php
$files = glob('../images/*.{jpg,png,gif}', GLOB_BRACE);
foreach($files as $file) {
$file = str_replace("../images/", "", $file);
if($file != $image){
echo '<option value="'. $file . '">'. $file . '</option>';
}
}
?>
</select></label><br /><br />
<input name="submit" type="submit" value="veranderen">
</form>
</div> <!-- content -->
<div data-role="footer">
Joram </div> <!-- footer-->
</div>
</div> <!-- page -->
</body>
</html>
update.php
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
<?php
$id = 1;
$title = $_POST['title'];
$logo = $_POST['logo'];
$error = false;
$msg = '';
if ($_POST['submit']) {
if (!$_POST['title'] OR !$_POST['logo']) {
$error = true;
$msg = 'Error update: Voer alle gegevens in en probeer het opnieuw.';
}
if ($error == false) {
include 'connect.php';
$title = mysqli_real_escape_string($title);
$logo = mysqli_real_escape_string($logo);
echo $title,$logo. 'titel en logo';
mysqli_query($conn,"UPDATE mobile SET title='$title', logo='$logo' WHERE id='$id'") or die('Kon niet toevoegen in de db.');
header("Location: index.php?id=$id");
}
}
if ($error == true){
echo $msg.'<br><a href="index.php">Weer naar mobiele website toe</a>';
}
?>
$id = 1;
$title = $_POST['title'];
$logo = $_POST['logo'];
$error = false;
$msg = '';
if ($_POST['submit']) {
if (!$_POST['title'] OR !$_POST['logo']) {
$error = true;
$msg = 'Error update: Voer alle gegevens in en probeer het opnieuw.';
}
if ($error == false) {
include 'connect.php';
$title = mysqli_real_escape_string($title);
$logo = mysqli_real_escape_string($logo);
echo $title,$logo. 'titel en logo';
mysqli_query($conn,"UPDATE mobile SET title='$title', logo='$logo' WHERE id='$id'") or die('Kon niet toevoegen in de db.');
header("Location: index.php?id=$id");
}
}
if ($error == true){
echo $msg.'<br><a href="index.php">Weer naar mobiele website toe</a>';
}
?>
Gewijzigd op 24/03/2013 21:04:59 door Joram J
set even [ c o d e ] en [ / c o d e ] om je code heen maar dan zonder spaties,
dan is het wat beter leesbaar.
gelukt, hoop dat jullie me kunnen helpen.
sorry ik zie geen jquery
Ik programmeer nog niet zo lang en moet nog het een en ander leren. Ik dacht omdat ik aan jquery link, het dan ook zo heette..
Als je één van de twee regels weghaalt (regel 20 en 23) waarin je de jquery libraries inlaad dan werkt je formulier wel. kennelijk is het niet de bedoeling dat je ze beiden gebruikt? helaas vervalt dan ook je opmaak van de velden. maar die kun je natuurlijk ook zelf stylen met css.
Is dit wel mogelijk op een iets andere manier dan?
Ik merk ook dat beide formulieren samen niet werken, dit heb ik alleen niet bewust gedaan...
Kan het daar aan liggen dat hij niet werkt met de kant en klare opmaak?
Gewijzigd op 24/03/2013 21:46:06 door Joram J
Daarna ga je controleren of de $_POST waarden bestaan. Volgorde lijkt me onlogisch.
Daarna ga je nog een keer de variabele met mysqli_real_escape_string wijzigen. Dat gebruik je overigens doorgaans in een query.
Variabelen in een query buiten quotes.
Or die is geen (nette) foutafhandeling.
Ook in de header zou ik de variabele buiten quotes plaatsen.
Na de header bij voorkeur exit; gebruiken -> het script hoeft immers niet verder.
Ten aanzien van je vraag: staat er alleen undefined? Geen verdere melding/locatie/regel?
Bovendien dien je een submit-event handler te maken. Lees maar eens goed:
http://mobile.tutsplus.com/tutorials/mobile-web-apps/jquery-mobile-forms/
Ik heb deze bestanden trouwens samen met iemand gemaakt. Hij gebruikt mysql ipv mysqli en bij hem werkt alles wel gewoon..
Ik heb alles later omgezet naar mysqli omdat ik dat in al mikn scripts gebruik en dacht hierna dus dat er iets fout was aan de query. Maar na deze reacties te lezen blijkt het allemaal een stuk ingewikkelder.
Wel vreemd dat hij bij hem wel werkte dan..
Gewijzigd op 24/03/2013 23:05:38 door Joram J
Joram J op 24/03/2013 23:04:26:
Wel vreemd dat hij bij hem wel werkte dan..
Debuggen/testen dus:
Begin eens met de oorspronkelijke versie (van hem) en kijk/controleer of die goed draait. Als dat zo is, ligt het aan jouw aanpassingen.
Dan stapsgewijs aanpassingen doorvoeren en kijken waar/wanneer het fout gaat.
Ja maar die werkt niet.. We dachten dat dat kwam omdat hij mysql gebruikt en ik mysqli. Hadden we al vaker gehad namelijk met bestandjes. Dat gaat niet samen allebei. Beide versies werken dus niet bij mij..