λαθος καταχωρηση σε βδ

Σε αυτή την περιοχή μπορείτε να βρείτε ή να αναζητήσετε πληροφορίες σχετικές με την PHP

Συντονιστές: WebDev Moderators, Super-Moderators, PHP Moderators

Απάντηση
stavroula_apo
Δημοσιεύσεις: 121
Εγγραφή: 18 Σεπ 2010 03:12

λαθος καταχωρηση σε βδ

Δημοσίευση από stavroula_apo » 09 Σεπ 2011 12:25

Γεια σας,
έχω φτιάξει μία φόρμα καταχώρησης στοιχείων σε μία βδ, ένα από τα πεδία που πρέπει να συμπληρώσω είναι το τηλ. Εδώ είναι το πρόβλημα όμως, άλλο αριθμό τηλεφώνου καταχωρώ και άλλο καταχωρεί στη βδ. Συγκεκριμένα ένα συγκεκριμένο αριθμό τηλεφώνου καταχωρεί στη βδ. Τι μπορεί να φταίει?

Άβαταρ μέλους
korgr
Honorary Member
Δημοσιεύσεις: 5067
Εγγραφή: 07 Οκτ 2008 18:30
Τοποθεσία: Corinth
Επικοινωνία:

λαθος καταχωρηση σε βδ

Δημοσίευση από korgr » 09 Σεπ 2011 12:43

Κάπου στην διαδικασία κάνεις overwrite την τιμή της φόρμας με κάποια ξεχασμένη τιμή. Πιθανόν να υπάρχει κάποια μεταβλητή με ίδιο όνομα και σου ακυρώνει την τιμή της φόρμας.
Χωρίς να παραθέσεις κώδικα όμως είναι δύσκολο να πούμε κάτι με σιγουριά

stavroula_apo
Δημοσιεύσεις: 121
Εγγραφή: 18 Σεπ 2010 03:12

λαθος καταχωρηση σε βδ

Δημοσίευση από stavroula_apo » 09 Σεπ 2011 12:53

Κώδικας: Επιλογή όλων

if($_SESSION['access']!=3){ 
	header('location:index.php');
	exit;
}

echo '<?xml version="1.0" enconding="UTF-8" ?>';
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http&#58;//www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http&#58;//www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<title>Τ.Ε.Ι Καλαμάτας -Παράρτημα Σπάρτης &#58;&#58; Καταχώρηση Καθηγητή</title>
<link rel="stylesheet" href="menu/menu_style.css" type="text/css" />
<script language="javascript" type="text/javascript" src="script.js"></script>
</head>

<body>
<div id="container">
<?php require&#40;"menu.php"&#41;; ?>
<?php
if&#40;!$_POST&#91;"submit"&#93;&#41;&#123;
?>

<h3>Καταχώρηση Καθηγητή</h3>

<form name="add_staff" action="" method="post" onsubmit="return validateadd_staff&#40;&#41;;" onreset="return confirm&#40;'Είστε σίγουρος ότι θέλετε να καθαρίσετε όλη τη φόρμα;'&#41;">
<fieldset>
<legend>Προσωπικά Στοιχεία</legend>
<div id="float">
	
	<label for="stafffirst">Όνομα</label>
	<input type="text" class="textfield" name="stafffirst" id="stafffirst" size="30" tabindex="1"/><br/><br/>
	<label for="stafflast">Επώνυμο</label>
	<input type="text" class="textfield" name="stafflast" id="stafflast" size="30" tabindex="2"/><br/><br/>
	<label for="stafftelephone">Τηλέφωνο</label>
	<input type="text" class="textfield" name="stafftelephone" id="stafftelephone" size="30" tabindex="3"/><br/><br/>
	<label for="staffemail">E-mail</label>
	<input type="text" class="textfield" name="staffemail" id="staffemail" size="30" tabindex="4"/><br/><br/>
	<label for="username">Username</label>
	<input type="text" class="textfield" name="username" id="username" size="30" tabindex="5"/><br/><br/>
	<label for="password">Password</label>
	<input type="password" class="textfield" name="password" id="password" size="30" tabindex="6"/><br/><br/>
</div>
</fieldset>

	<input type="submit" name="submit" class="cbutton" value="Προσθήκη" tabindex="7"/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
	<input type="reset" class="cbutton" value="Καθαρισμός" tabindex="8"/>
</form>
</div>
<br/>

<?php
&#125;else &#123;
$username = md5&#40;mysql_real_escape_string&#40;$_POST&#91;'username'&#93;&#41;&#41;;
$password = md5&#40;mysql_real_escape_string&#40;$_POST&#91;'password'&#93;&#41;&#41;;

$stafffirst=mysql_real_escape_string&#40;$_POST&#91;'stafffirst'&#93;&#41;;
$stafflast=mysql_real_escape_string&#40;$_POST&#91;'stafflast'&#93;&#41;;
$stafftelephone=mysql_real_escape_string&#40;$_POST&#91;'stafftelephone'&#93;&#41;;
$staffemail=mysql_real_escape_string&#40;$_POST&#91;'staffemail'&#93;&#41;;

if&#40;$stafffirst !="" && $stafflast !="" && $stafftelephone !="" && $staffemail !="" && $username !="" && $password !=""&#41;&#123;
$query="INSERT INTO users&#40;username, password, access&#41; VALUES &#40;'$username', '$password', '2'&#41;";
mysql_query&#40;$query, $con&#41; or die&#40;myerror&#40;$con&#41;&#41;;
$lastid = mysql_insert_id&#40;&#41;;
$query="INSERT INTO staff &#40;stafffirst, stafflast, stafftelephone, staffemail, usid&#41; VALUES &#40;'$stafffirst', '$stafflast', '$stafftelephone', '$staffemail', '$lastid'&#41;"; 
mysql_query&#40;$query, $con&#41; or die&#40;myerror&#40;$con&#41;&#41;;
$lastid = mysql_insert_id&#40;&#41;;
echo "Η εγγραφή καταχωρήθηκε επιτυχώς! <br/><br/>";

$query="select * from staff, users where staff.staffid=".$lastid." and staff.usid=users.usid";
$result=mysql_query&#40;$query, $con&#41;;
$row=mysql_fetch_array&#40;$result&#41;;
?>

<table border="1">
<tr>
<th>Όνομα&#58; </th>
<td><?php echo $row&#91;'stafffirst'&#93;;?></td>
</tr>
<tr>
<th>Επώνυμο&#58; </th>
<td><?php echo $row&#91;'stafflast'&#93;;?></td>
</tr>
<tr>
<th>Τηλέφωνο&#58; </th>
<td><?php echo $row&#91;'stafftelephone'&#93;;?></td>
</tr>
<tr>
<th>E-mail&#58; </th>
<td><?php echo $row&#91;'staffemail'&#93;;?></td>
</tr>
<tr>
<th>Username&#58; </th>
<td><?php echo $row&#91;'username'&#93;;?></td>
</tr>
<tr>
<th>Password&#58; </th>
<td><?php echo $row&#91;'password'&#93;;?></td>
</tr>
</table>
<input type="button" value="<Επιστροφή" class="button" onclick="document.location='add_staff.php';"/>
<?php
&#125;
else&#123;
echo "Δεν συμπληρώσατε όλα τα στοιχεία της φόρμας";
&#125;
&#125;
mysql_close&#40;$con&#41;;
?>
<br />
<br />
</div>
</body>
</html> 

Άβαταρ μέλους
fafos
Script Master
Δημοσιεύσεις: 6236
Εγγραφή: 30 Νοέμ 2004 03:09

λαθος καταχωρηση σε βδ

Δημοσίευση από fafos » 09 Σεπ 2011 14:50

Koitaxe sthn vash sou mhpos sto pedio gia to thlefono exeis dosei prokathorismenh timh ena noumero anti gia none h null..
Οι πάνες και οι πολιτικοί πρέπει να αλλάζονται συχνά για τον ίδιο λόγο...

stavroula_apo
Δημοσιεύσεις: 121
Εγγραφή: 18 Σεπ 2010 03:12

λαθος καταχωρηση σε βδ

Δημοσίευση από stavroula_apo » 09 Σεπ 2011 15:00

CREATE TABLE IF NOT EXISTS `staff` (
`staffid` int(11) NOT NULL AUTO_INCREMENT,
`stafffirst` varchar(25) NOT NULL,
`stafflast` varchar(25) NOT NULL,
`stafftelephone` int(10) DEFAULT NULL,
`staffemail` varchar(100) DEFAULT NULL,
`usid` int(11) NOT NULL,
PRIMARY KEY (`staffid`),
KEY `usid` (`usid`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

Κώδικας: Επιλογή όλων

αυτη είναι η δομή του πίνακά μου...

stavroula_apo
Δημοσιεύσεις: 121
Εγγραφή: 18 Σεπ 2010 03:12

λαθος καταχωρηση σε βδ

Δημοσίευση από stavroula_apo » 09 Σεπ 2011 15:06

ξέρεις όμως τι γίνεται? όταν αλλάζω τη γλώσσα στα αγγλικά, τα καταχωρεί κανονικά. Γτ?

Άβαταρ μέλους
fafos
Script Master
Δημοσιεύσεις: 6236
Εγγραφή: 30 Νοέμ 2004 03:09

λαθος καταχωρηση σε βδ

Δημοσίευση από fafos » 09 Σεπ 2011 15:07

to staffid sto vazei sosta? mhpos prepei na oriseis kai auto sto insert pou kaneis?
Οι πάνες και οι πολιτικοί πρέπει να αλλάζονται συχνά για τον ίδιο λόγο...

stavroula_apo
Δημοσιεύσεις: 121
Εγγραφή: 18 Σεπ 2010 03:12

λαθος καταχωρηση σε βδ

Δημοσίευση από stavroula_apo » 09 Σεπ 2011 15:19

Το staffid μου το καταχωρεί μια χαρά κανονικά, σωστά.

Άβαταρ μέλους
fafos
Script Master
Δημοσιεύσεις: 6236
Εγγραφή: 30 Νοέμ 2004 03:09

λαθος καταχωρηση σε βδ

Δημοσίευση από fafos » 09 Σεπ 2011 15:25

kane ena echo sto query na deis ti stelnei... an einai sosto to thlephono tote to lathos einai sthn vash.. an einai lathos tote kapou pio pano dinei lathos thn metavlhth.. dhlose kai to staffid sto query..
Οι πάνες και οι πολιτικοί πρέπει να αλλάζονται συχνά για τον ίδιο λόγο...

stavroula_apo
Δημοσιεύσεις: 121
Εγγραφή: 18 Σεπ 2010 03:12

λαθος καταχωρηση σε βδ

Δημοσίευση από stavroula_apo » 09 Σεπ 2011 15:31

δεν κτλβ τι μου είπες να κάνω...

Άβαταρ μέλους
fafos
Script Master
Δημοσιεύσεις: 6236
Εγγραφή: 30 Νοέμ 2004 03:09

λαθος καταχωρηση σε βδ

Δημοσίευση από fafos » 09 Σεπ 2011 15:34

echo $query; kato apo to query tou staff kai kane dokimh..
Οι πάνες και οι πολιτικοί πρέπει να αλλάζονται συχνά για τον ίδιο λόγο...

stavroula_apo
Δημοσιεύσεις: 121
Εγγραφή: 18 Σεπ 2010 03:12

λαθος καταχωρηση σε βδ

Δημοσίευση από stavroula_apo » 09 Σεπ 2011 15:39

το καταχωρεί κανονικά με το σωστό τηλεφωνο

pimpogio
Δημοσιεύσεις: 1080
Εγγραφή: 28 Δεκ 2010 14:08

λαθος καταχωρηση σε βδ

Δημοσίευση από pimpogio » 09 Σεπ 2011 16:11

εχεις λαθος εδω
`stafftelephone` int(10) DEFAULT NULL,

πρεπει να το κανεις

`stafftelephone` varchar(100) DEFAULT NULL,


κανα overflow γινοτανε μαλλον

stavroula_apo
Δημοσιεύσεις: 121
Εγγραφή: 18 Σεπ 2010 03:12

λαθος καταχωρηση σε βδ

Δημοσίευση από stavroula_apo » 09 Σεπ 2011 16:17

pimpogio έγραψε:εχεις λαθος εδω
`stafftelephone` int(10) DEFAULT NULL,

πρεπει να το κανεις

`stafftelephone` varchar(100) DEFAULT NULL,


κανα overflow γινοτανε μαλλον
Γτ να μην είναι int όμως και να είναι varchar?

pimpogio
Δημοσιεύσεις: 1080
Εγγραφή: 28 Δεκ 2010 14:08

λαθος καταχωρηση σε βδ

Δημοσίευση από pimpogio » 09 Σεπ 2011 16:25

γιατι τα τηλεφωνα δεν ειναι int απλο

αμα εβαζες κατι μικρο λογικα θα επαιζε στο μεγαλο αριθμο ετρωγε overflow και σου εβγαζε το οverflow value

Απάντηση

Επιστροφή στο “PHP Προγραμματισμός”

Μέλη σε σύνδεση

Μέλη σε αυτήν τη Δ. Συζήτηση: Δεν υπάρχουν εγγεγραμμένα μέλη και 2 επισκέπτες