Πρόβλημα στην επεξεργασία δεδομένων

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

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

Απάντηση
lenaki7
Δημοσιεύσεις: 23
Εγγραφή: 22 Ιαν 2009 00:53

Πρόβλημα στην επεξεργασία δεδομένων

Δημοσίευση από lenaki7 » 15 Φεβ 2009 17:15

Καλησπέρα,
κάνω μία ιστοσελίδα στην οποία ένας χρήστης κάνει εγγραφή και υποβάλλει τις ασκήσεις του. Ο χρήστης έχει την δυνατότητα να βλεπει τις ασκήσεις του και να τις επεξεργάζεται. έχω φτιάξει τον κώδικα και μου τρέχει κανονικά αλλά στην βάση δεν κάνει αλλαγή των δεδομένων. ο κώδικας είναι ο παρακάτω:

@$db = mysql_connect("localhost", "root", "");
if (!$db) {
echo "Αδύνατη η σύνδεση με τον MySQL server";
exit;
}
mysql_select_db("bash1");


$ask_name = $_GET['ask_name'];
$description= $_GET['description'];

$id = $_SESSION['ask_id'];


if(isset($_GET['subject']))
{
foreach($_GET['subject'] as $value) {

if(isset($_GET['taksi']))
{
foreach($_GET['taksi'] as $value2){

$query = "UPDATE upload_files set ask_name = '$ask_name', class = '$value2', subject = '$value', description = '$description' where ask_id = '".$id."'";
mysql_query("SET NAMES greek");

mysql_query($query) or die(mysql_error());


echo "Οι αλλαγές σας καταχωρήθηκαν!";

}
}
}
}
echo "<a href=\"javascript:history.back(-1);\">Πίσω</a>";
?>


αυτό είναι το αρχείο ask_edit.php. Στο αρχείο askiseis.php(σε αυτό βλέπει τις ασκήσεις του και μπορεί να πατήσει την επεξεργασία και να μεταβεί στο ask_edit.php) έχω βάλει και την εξής εντολή για να παίρνει το id της άσκησης
if($obj = @mysql_fetch_object($result))
{
$_SESSION['ask_id'] = $obj->ask_id;
}
Μήπως μπορεί να βοηθήσει κανέις?
Ευχαριστώ πολύ εκ των προτέρων

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

Πρόβλημα στην επεξεργασία δεδομένων

Δημοσίευση από fafos » 15 Φεβ 2009 17:17

kane ena echo thn $query kai pes mas ti sou dinei...
Οι πάνες και οι πολιτικοί πρέπει να αλλάζονται συχνά για τον ίδιο λόγο...

lenaki7
Δημοσιεύσεις: 23
Εγγραφή: 22 Ιαν 2009 00:53

Πρόβλημα στην επεξεργασία δεδομένων

Δημοσίευση από lenaki7 » 15 Φεβ 2009 17:28

μου δίνει τα δεδομένα της ασκήσεις που πατάω για επεξεργασία αλλά δεν μου δίνει το σωστό ask_id. Μου δίνει το ask_id της πρώτης άσκησης που είναι στην λίστα

πχ UPDATE upload_files set ask_name = 'lenaaaa', class = 'Α Λυκείου', subject = 'Παιχνίδια', description = ' fsdfsdfsdfsd' where ask_id = '31'
ενώ θα έπρεπε το ask_id= 42

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

Πρόβλημα στην επεξεργασία δεδομένων

Δημοσίευση από fafos » 15 Φεβ 2009 18:15

lenaki7 έγραψε:μου δίνει τα δεδομένα της ασκήσεις που πατάω για επεξεργασία αλλά δεν μου δίνει το σωστό ask_id. Μου δίνει το ask_id της πρώτης άσκησης που είναι στην λίστα

πχ UPDATE upload_files set ask_name = 'lenaaaa', class = 'Α Λυκείου', subject = 'Παιχνίδια', description = ' fsdfsdfsdfsd' where ask_id = '31'
ενώ θα έπρεπε το ask_id= 42
mhn pairneis to id me session... parto me GET sto link...
Οι πάνες και οι πολιτικοί πρέπει να αλλάζονται συχνά για τον ίδιο λόγο...

lenaki7
Δημοσιεύσεις: 23
Εγγραφή: 22 Ιαν 2009 00:53

Πρόβλημα στην επεξεργασία δεδομένων

Δημοσίευση από lenaki7 » 15 Φεβ 2009 18:42

Το δοκίμασα αυτό αλλά κάτι δεν μου βγαίνει και δεν μπορώ να καταλάβω γιατί.Μήπως μπορείς να με βοηθήσεις?Αυτός είναι ο κώδικας ask_edit που καλεί το ask_edit2 στο οποίο γίνεται το update.

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

<?php
@$db = mysql_connect&#40;"localhost", "root", ""&#41;;
	if &#40;!$db&#41;  &#123;
	  echo "Αδύνατη η σύνδεση με τον MySQL server";
	  exit;
	&#125;
	mysql_select_db&#40;"bash1"&#41;;
$var = @$_GET&#91;'id'&#93; ;
//$id = $_SESSION&#91;'id'&#93;; 
	$query = " select * from upload_files where ask_id='".$var."' ";
	mysql_query&#40;"SET NAMES greek"&#41;;
//ektelesh tou erwthmatos k kataxwrhsh toy apotelesmatos s 1 metavlhth 
	$result = mysql_query&#40;$query&#41; or die&#40;mysql_error&#40;&#41;&#41;; ;
	//echo '<form id="form1" name="form1" method="get" action="ask_edit2.php">'; 


while &#40;$results = mysql_fetch_assoc&#40;$result&#41;&#41;
&#123;    

 $ask_name=$results&#91;'ask_name'&#93;;
 $class=$results&#91;'class'&#93;; 
 $subject=$results&#91;'subject'&#93;;
 $description=$results&#91;'description'&#93;;
 $file_name=$results&#91;'file_name'&#93;; 

 
?>

<td width="20%" height="377" align="left" valign="middle"><form id="form1" name="form1" action="ask_edit2.php" method="get"
enctype="multipart/form-data">
                        <p align="center" class="style2 style14">Εδώ μπορείς να δεις τα στοιχεία της άσκησής σου και να αλλάξεις όποιο δε σου αρέσει..</p>
                        <p align="center" class="style2 style14">&nbsp;</p>
                <div align="center">
                          <table width="596" height="41" border="0" cellpadding="1" cellspacing="1">
                            <tr>
                              <td width="325" height="39" class="style8"><span class="style12">Όνομα της άσκησης/εφαρμογής που ανέβασες&#58;</span></td>
                            <!--  echo &#40;"<a href=\"&#123;$results&#91;'upload_path'&#93;&#125;&#123;$results&#91;'file_name'&#93;&#125;\">$ask_name</a>"&#41;; -->
                              <td width="264"><input type="text" name="ask_name" id="ask_name" value="<?php echo "$ask_name"; ?>" /></td>
							             
	
                            </tr>
                          </table>
                          
                        </div>
                        <p align="center">&nbsp;</p>
                        <p align="center" class="style12">Τάξη στην οποία ανήκει η άσκηση/εφαρμογή σου&#58;</p>
                        <div align="center">
                              <table width="250
                          " height="30" border="0">
                        <tr>
                              
 <?php 
 $g=""; $a="";
if &#40;$class=="Γ Γυμνασίου"&#41; &#123;
$g=checked;
&#125;
else if &#40;$class=="Α Λυκείου"&#41; &#123;
$a=checked;
&#125;
?>
  <td width="160">
    
    <input type="checkbox" name= taksi&#91;&#93; value= "Γ Γυμνασίου" <?php echo "$g"; ?> /> <span class="style8"> Γ' Γυμνασίου</span> </td>
  
                                          <td width="160"><input type="checkbox" name=taksi&#91;&#93; value="Α Λυκείου" <?php echo "$a" ?> />
                              <span class="style8"> Α' Λυκείου</span> </td>
                            </tr>
                          </table>
                        </div>
                      <p align="center">&nbsp;</p>
                      <p align="center" class="style1 style13">Θέμα της άσκησης/εφαρμογής&#58;</p>
                      <div align="center">
                        <table width="591" height="95" border="0" cellpadding="1" cellspacing="1">
                          <tr>
                            
                            <?php $ma=""; $p=""; $e=""; $gl=""; $t="";
if &#40;$subject=="Μαθηματικά"&#41; &#123;
$ma=checked;
&#125;
else if &#40;$subject=="Παιχνίδια"&#41; &#123;
$p=checked;
&#125;
else if &#40;$subject=="Επιστήμες"&#41; &#123;
$e=checked;
&#125;
else if &#40;$subject=="Γλωσσολογικές"&#41; &#123;
$gl=checked;
&#125;
else if &#40;$subject=="Τέχνη και Δημιουργικότητα"&#41; &#123;
$t=checked;
&#125;

?>
                            <td width="172"><input type="checkbox" name=subject&#91;&#93; value="Μαθηματικά" <?php echo "$ma"; ?> />
                            <span class="style8">Μαθηματικά</span></td>
      <td width="237"><input type="checkbox" name=subject&#91;&#93; value="Παιχνίδια" <?php echo "$p"; ?> />
        <span class="style8">Παιχνίδια</span></td>
      <td width="172"><input type="checkbox" name=subject&#91;&#93; value="Επιστήμες" <?php echo "$e"; ?> />
        <span class="style8">Επιστήμες</span></td>
    </tr>
                          <tr>
                            <td class="style8"><input type="checkbox" name=subject&#91;&#93; value="Γλωσσολογικές" <?php echo "$gl"; ?> />
                            Γλωσσολογικές</td>
      <td class="style8"><input type="checkbox" name=subject&#91;&#93; value="Τέχνη και Δημιουργικότητα" <?php echo "$t"; ?> />
        Τέχνη και δημιουργικότητα</td>
      <td>&nbsp;</td>
    </tr>
                        </table>
                      </div>
                    <p align="center">&nbsp;</p>
                      
                    <div align="left">
                     
                      <span class="style1"><span class="style13">Το αρχείο που ανέβασες είναι το &#58;</span> <?php echo "$file_name"; ?>                      </span></div>
                    <p align="center" class="style1">
      <label class="style8"><span class="style13"><br />
      Περιγραφή άσκησης/εφαρμογής&#58; </span><br />
      <textarea name="description" id="description" cols="45" rows="7"> <?php echo "$description"; ?></textarea>
      
      <br />
      <br />
      </label>
      <input type="submit" name="submit" value="Αλλαγή" />
</p>



</p>

<?php
&#125;
echo "<a href=\"javascript&#58;history.back&#40;-1&#41;;\">Πίσω</a>";

?>
</form></td>
Edited by Basilakis και πρόσθεσα το BBcode

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

Πρόβλημα στην επεξεργασία δεδομένων

Δημοσίευση από fafos » 15 Φεβ 2009 18:54

vale ta se bbcode code..../code giati den katalavaino tipota :D
Οι πάνες και οι πολιτικοί πρέπει να αλλάζονται συχνά για τον ίδιο λόγο...

lenaki7
Δημοσιεύσεις: 23
Εγγραφή: 22 Ιαν 2009 00:53

Πρόβλημα στην επεξεργασία δεδομένων

Δημοσίευση από lenaki7 » 15 Φεβ 2009 19:00

χίλια συγνώμη αλλά τι εννοείς να το βάλω σε bbcode?σε ευχαριστώ πάρα πολύ για την βοήθεια.

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

Πρόβλημα στην επεξεργασία δεδομένων

Δημοσίευση από fafos » 15 Φεβ 2009 19:19

lenaki7 έγραψε:χίλια συγνώμη αλλά τι εννοείς να το βάλω σε bbcode?σε ευχαριστώ πάρα πολύ για την βοήθεια.
ton kodika opos auto:

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

...kodikas...
Οι πάνες και οι πολιτικοί πρέπει να αλλάζονται συχνά για τον ίδιο λόγο...

lenaki7
Δημοσιεύσεις: 23
Εγγραφή: 22 Ιαν 2009 00:53

Πρόβλημα στην επεξεργασία δεδομένων

Δημοσίευση από lenaki7 » 15 Φεβ 2009 19:58

Σε ευχαριστώ Basilakis

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

Πρόβλημα στην επεξεργασία δεδομένων

Δημοσίευση από fafos » 15 Φεβ 2009 20:26

vale ena hidden input mesa sthn forma sou gia na pairneis to id ths eggrafhs:

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

<input type="hidden" name="id" value="<?php echo $val; ?>" /> 
kai sthn selida pou exeis to update kalese to id:

$id = $_GET[id];


symvoulh 1... mhn xrhsimopoieis GET method gia thn forma.... kalytera thn post giati an exeis megalo keimeno se kapoio pedio den tha treksei to url logo mhkous..

symvoulh 2... sthn selida pou kaneis update den eksasfalizeis an h askhsh anhkei ston xrhsth pou prospathei na ths kanei edit... feiakse mia routina opou tha epalhtheuei oti h askhsh X einai pragmati tou xrhsth tade giati allios o kathenas epeksergazete tis askhseis allon...
Οι πάνες και οι πολιτικοί πρέπει να αλλάζονται συχνά για τον ίδιο λόγο...

lenaki7
Δημοσιεύσεις: 23
Εγγραφή: 22 Ιαν 2009 00:53

Πρόβλημα στην επεξεργασία δεδομένων

Δημοσίευση από lenaki7 » 16 Φεβ 2009 01:37

Fafo σε ευχαριστώ πάρα πολύ για την πολύτιμη βοήθειά σου!!!Τελικά λύθηκε το πρόβλημα!!!Σε ευχαριστώ και για τις συμβουλές σου!!για την πρώτη σου συμβουλή θα κοιτάξω να το διορθώσω. Για την δεύτερη συμβουλή σου υπάρχει ήδη ο έλεγχος που γίνεται έτσι ώστε κάθε χρήστης να βλέπει μόνο τις δικές του και να μπορεί να τις επεξεργάζεται μόνο αυτός!
και πάλι σε ευχαριστώ!!

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

Πρόβλημα στην επεξεργασία δεδομένων

Δημοσίευση από fafos » 16 Φεβ 2009 01:51

lenaki7 έγραψε:Για την δεύτερη συμβουλή σου υπάρχει ήδη ο έλεγχος που γίνεται έτσι ώστε κάθε χρήστης να βλέπει μόνο τις δικές του και να μπορεί να τις επεξεργάζεται μόνο αυτός!
και πάλι σε ευχαριστώ!!
Den leei tipota auto!! an katevaso thn forma sou local kai doso ena oiandhpote id mpaino mesa kai sta kano ola limpa (pou lene kai sto xorio mou :D ).. h an to afhseis me get akoma xeirotera!! epishs asfalise ta queries apo mysql injections ( http://en.wikipedia.org/wiki/SQL_injection ) kai alles istories...
Οι πάνες και οι πολιτικοί πρέπει να αλλάζονται συχνά για τον ίδιο λόγο...

lenaki7
Δημοσιεύσεις: 23
Εγγραφή: 22 Ιαν 2009 00:53

Πρόβλημα στην επεξεργασία δεδομένων

Δημοσίευση από lenaki7 » 16 Φεβ 2009 02:01

Ok!!!tha to koitakso ligo perissotero ayto pou mou les!!apo oti katalavaineis eimai arxaria stin php kai mysql opote polu pithano na ksanaxreiasto tin voitheia sou!! :) an pantos exeis kai perissoteres leptomereies gia to thema kai genikotera gia tin php kai mysql (xrisima sites ktl..) tha me endiefere polu!!!

thanks kai pali!!

Απάντηση

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

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

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