2010-04-23 10 views
1

Je veux que les travaux du Groupe de contrôle sur mon site pour les membres ...confirmation d'alerte ne fonctionne pas

J'ai conçu la page est affichée tous les membres inscrits sur mon site

Et je mais avant de case à cocher chaque nom de membre, becuase il a permis de sélectionner plusieurs noms puis cliquez sur le bouton supprimer si vous cliquez sur la suppression ok fonctionne, le code suivant fonctionne

mais maintenant je veux confirmer alerte avant le code de suppression de travail

même, et si cliqué sur annuler l'est ne fonctionne pas ..

comment je peux le travailler?

<?php 
while($row = mysql_fetch_array($sql1)) 
{ 
?> 
    <tr> 
     <td align="center" bgcolor="#FFFFFF"><input name="checkbox[]" type="checkbox" id="checkbox[]" value="<?php echo $row['MemberID']; ?>"></td> 
     <td bgcolor="#FFFFFF"><?php echo $row['MemberName']; ; ?></td> 
    </tr> 

<?php 
} 

?> 

<tr> 
    <td colspan="5" align="center" bgcolor="#FFFFFF"><input name="delete" type="submit" id="delete" value="delete" onclick="javascript:return confirm('are you sure to delete this record???? ')"/></td> 
</tr> 

<?php 

$delete = $_REQUEST['delete']; 
$checkbox = $_REQUEST['checkbox']; 
$count = count($_REQUEST['checkbox']); 

// Check if delete button active, start this 
if($delete) { 

    echo "<script language=\"Javascript\">\n"; 
    for($i=0;$i<$count;$i++){ 
     $del_id = $checkbox[$i]; 


     $sql = "Delete FROM members where MemberID ='$del_id'"; 

     $sq2 = "Delete FROM joinroom where MemberID ='$del_id'"; 

     $result1 = mysql_query($sql); 
     $result2 = mysql_query($sq2); 

     echo "else {\n"; 
     echo "alert ('Nothing deleted');\n }"; 
     echo "</script>"; 
    } 
} 
?> 

Merci beaucoup .........

+1

Ce pseudo-protocole 'javascript:' est par ailleurs superflu. Retirez-le. – BalusC

+0

Citation de votre question: * même si vous cliquez sur OK, la suppression fonctionne, et si vous cliquez sur Annuler, la [suppression] ne fonctionne pas *. N'est-ce pas le comportement voulu? –

+0

En fait, je n'ai pas prêté attention à sa question car son anglais était incomparable, alors je suis juste passé au code. Le code JS qu'il a tenté d'imprimer en utilisant PHP en bas est syntaxiquement invalide. Pour le reste, il semble correct, à part le trou d'injection SQL. – BalusC

Répondre

1

PHP et Javascript ne fonctionne pas synchronisés comme vous semblez le penser. PHP s'exécute du côté serveur, produit un tas de texte de modèle avec HTML/CSS/JS incorporé, l'envoie sur le réseau du serveur au client en utilisant le protocole HTTP. Une fois arrivé au côté client, le JS commence à être interprété et exécuté. Cliquez avec le bouton droit de la souris sur votre navigateur Web et faites Afficher la source. Cela deviendra plus clair. Vous verrez une bonne erreur de syntaxe JS. Par ailleurs, désinfectez vos entrées. C'est un bon trou SQL injection.

+0

N'est pas clair pour moi votre idée selon les besoins .... Ce que j'ai compris de votre discours qu'il est difficile de le faire ???? N'est-ce pas? – user318068

+0

J'espère que votre aide moi ... Je ne suis pas assez d'expérience Dites-moi où l'erreur même je vous l'avez modifié que je l'ai testé le code qu'il fonctionne, mais si vous cliquez sur le bouton deux fois pour deux successives (Je veux dire que si vous cliquez spécifiquement sur le bouton et que vous choisissez OK la première fois, mais si vous avez le même travail est à nouveau ........ cela fonctionne, il est vraiment perplexe – user318068

+0

Ouvrir la page dans webbrowser, exécutez la commande delete, rightclick et choisissez * View Source *, dirigez-vous vers le '